0

一个多星期以来,我一直在努力尝试设置自定义 ORBEON REST 持久性。

我正在使用具有以下配置的 Struts 2 MVC 框架:

<action name="/crud/{appName}/{formName}/form/form.xhtml" class="com.example.CrudController" method="executeForm" />

<action name="/crud/{appName}/{formName}/data/{uuid}/data.xml" class="com.example.CrudController" method="executeData" />

<action name="/search/{appName}/{formName}" class="com.example.SearchController" />

问题是只有第一个动作被调用。

在表单生成器中,当我单击表单记录(例如“foo”)时,这称为:

GET http://localhost:8080/mycontext/app/crud/myapp/library/form/form.xhtml

请注意,myapp 是正确的应用程序名称,但 library 不是正确的表单名称(应该是“foo”)。

从 Form Runner 中,当我尝试“foo”摘要或新页面时,这被称为:

GET http://localhost:8080/mycontext/app/crud/myapp/foo/form/form.xhtml

这次表单名称是正确的,但是我希望 /search/... 调用。不过,我尝试使用 xform xml 或查询结果进行响应,但均未成功。

4

1 回答 1

1

调用/crud/myapp/library/form/form.xhtml是正常的:Form Runner 不会加载您的表单,而是加载您的应用程序特定的部分模板库,该库存储在保留的library表单名称中。因此,您的持久性 API 的实现很可能应该返回 404,因为它没有 form myapp/library

至于/crud/myapp/foo/form/form.xhtml何时访问 a 的新页面的查询myapp/foo,这只是 Form Runner 加载 的表单定义myapp/foo。对搜索 API 的查询仅由摘要页面完成,以列出特定表单的数据。

于 2013-05-08T22:42:26.087 回答