在Orbeon 4.9上执行提交

时间:2015-05-22 03:57:05

标签: xml orbeon

升级到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上调用提交的方式已经改变了?

1 个答案:

答案 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。