1

私はSpringWebflowの初心者であり、古いJavaMVCアプリケーションをSpringMVC+WebFlowに移行しています。

古いアプリケーションのナビゲーションはこのようなURLで機能/MyServlet?action=myAction&status=1し、新しいアプリケーションでそれらを維持する必要があります。これで、MyServletへのすべてのリクエストを制御するコントローラーを作成しました。

@RequestMapping(value="/MyServlet", method = {RequestMethod.POST, RequestMethod.GET})

このコントローラーには、アクションを実行する古いサーブレットコードがあります。このソリューションでは、Springの制御下で古いコードを使用できます。

ここでWebFlowを使用したいのですが、すべてのビューが上記のURLで表現されており、フローを作成しようとすると無効になっているようです。次のエラーがあります:

エンティティ「アクション」への参照は、「;」で終わる必要があります デリミタ

これは私のXMLフローファイルです:

<view-state id="idIn" view="/MyServlet?action=myAction&status=1">
    <transition on="list" to="idList" />
</view-state>

<view-state id="idList" view="/MyServlet?action=myAction&status=2">
    <transition on="new" to="idNew" />
</view-state>

<view-state id="idNew" view="/MyServlet?action=myAction&status=3">
    <transition on="out" to="idOut" />
</view-state>

<end-state id="idOut" view="/MyServlet">
</end-state>

Spring WebFLowのパラメータでURLを使用することは可能ですか?どうすればいいですか?

よろしくお願いします。

4

2 に答える 2

0

Spring WebFlowには独自のURL構造があり、フロー内のすべての状態がフロー全体で単一のURLを共有します。したがって、現在のURL構造を維持し、同時にSpringWebFlowを使用することはできません。

したがって、フロー内の個々の状態に直接アクセスすることはできません。mod_rewriteのようなものでURLを変換できたとしても、フローの途中にジャンプしようとします。これは、SpringWebFlowの動作方法ではありません。

また、viewinはview-state、JSPやタイル定義のようなビューレンダリングテクノロジであると想定されています。これは特定のビューへの内部参照であり、外部ユーザーに表示されるURLではありません。

于 2012-06-19T14:20:15.550 に答える
0
The reference to entity "action" must end with the ';' delimiter

このエラーは&、URL でパラメーターを渡すために文字が記述されている場合に表示されていました。代わりにその文字を書くだけ&amp;で、エラーは修正されるはずです。

お役に立てれば。

于 2012-07-30T22:42:13.870 に答える