0

我必须在显示之前预先填充 xform,并且填充的数据来自数据库。我知道这可以使用操作或提交来完成,但是否有必要以 XML 格式传递该数据?我的 JSP/servlet 是否有可能在请求中设置了一个 Java 对象并且可以直接在 xform 中使用?

谢谢, Yeshasvi

4

1 回答 1

3

我已经为呈现 Orbeon XForms 的 JSR-286 portlet 实现了类似的功能。我实施的解决方案设置了一个 RenderRequest(HTTPServletRequest 的 Portlet 等效项)属性,因此它也应该适用于您的 Servlet 场景。

我使用 Apache XMLBeans 创建了 XForm 实例 XML,然后将其设置为请求属性并委托给 Orbeon 以使用 XForm 中的以下 XML 进行 XForms 呈现:

<xforms:insert ev:event="xforms-model-construct-done" nodeset="instance('nameOfSomeXFormInstance')" origin="xxforms:get-request-attribute('requestXMLAttribute')"/>

当然,您可以完全自由地决定如何从数据库中读取数据并将其转换为 XForms 实例的 XML 模式。

希望这可以帮助。

-斯蒂安

于 2011-06-03T10:30:29.473 回答