从Orbeon 4.65升级到4.10后,我们遇到了在Orbeon Form Runner中附加文件到某些表单的问题。
对于某些表单(只有少数几种),Orbeon Form Runner发布到我们服务的XML包含指向上传到Tomcat的临时文件的链接。
<Fuldmagt filename="img-thing.jpg" mediatype="image/jpeg" size="9883">
file:/C:/Users/ewp/IdeaProjects/blanketservice_src/tools/v4-10/apache-tomcat-7.0.47/temp/xforms_upload_18806697738900846.tmp?filename=img-thing.jpg&mediatype=image%2Fjpeg&size=9883&mac=1ff3fe177cad65bf0f9b2747044e9aba73b68f12
</Fuldmagt>
表单定义定义如下:
https://dl.dropboxusercontent.com/u/14750843/form.xml
发送过程定义如下:
<property as="xs:string" name="oxf.fr.detail.process.send.*.*"
value='require-uploads
then validate-all
then save(draft="false")
then send(
uri = "http://localhost:8080/ServiceGateway/receiveBlanketData/request",
method = "POST",
replace = "none",
content = "xml"
)
then send(
uri = "/../receipt/",
method = "GET",
replace = "all",
content = "xml"
)
recover error-message(message = "Blanketten kunne ikke indsendes. Kladden er gemt, prøv venligst senere.")'/>
奇怪的是,存储在Orbeon表单数据中的XML具有指向持久文件的链接:
<Udbyttenota filename="img-thing.jpg" mediatype="image/jpeg" size="9883">
/fr/service/persistence/crud/skat/Ansoegning_om_fritagelse_for_dansk_udbytteskat_2/data/26fa1462f450af70bf269c17bd0a80dc39a5a2ae/035e35acc559e0bae30a6bf8144aad1e76587131.bin
</Udbyttenota>
因此,似乎Orbeon在文件被保留之前发布了XML - 或者至少在XML中的临时文件链接被持久化的文件链接替换之前。
我是否可以采取措施确保在XML中替换链接之前未启动SEND?