升级到Orbeon 4.9
后执行提交时遇到一些问题。
使用以下提交作为示例:
<xf:submission action="http://localhost:7001/orbeon49/getValuesServlet"
id="OPEN_DOCUMENT"
method="post"
ref="instance('fr-form-instance')"
replace="instance">
</xf:submission>
要调用提交,使用了此代码:
<xf:action ev:event="xforms-ready">
<xf:send submission="OPEN_DOCUMENT"/>
</xf:action>
提交应该调用servlet
,该Orbeon
位于XML
应用程序应用程序中,该应用程序使用更新实例XML
的{{1}}进行响应。在版本4.9中,从不调用servlet并且提交失败。
在4.6版本中,这工作正常。
我恢复到版本4.7只是为了尝试一个比4.6更高的版本有所作为,它也适用于4.7。
那么,这是否意味着我们需要在4.9上调用提交的方式已经改变了?
答案 0 :(得分:0)
这可能是由于internal requests的实施。自4.7以来,Orbeon Forms将对自身的请求视为内部请求,并且不使用实际的HTTP连接。但是,这不能用于调用Orbeon Web应用程序中的servlet。
Orbeon Forms通过创建绝对URL来猜测内部请求,然后检查它是否与自身的路径匹配,例如http://localhost:8080/orbeon/
您可以通过使用绝对URL(例如,http://127.0.0.1:8080/orbeon/
来欺骗它仍然导致该servlet。