カスタムの ORBEON REST 永続化をセットアップするのに 1 週間以上苦労しました。
次の構成で 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" />
問題は、最初のアクションだけが呼び出されていることです。
Form Builder からフォーム レコード ("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 またはクエリ結果のいずれかで応答しようとしましたが、成功しませんでした。