2012-06-19 79 views
1

我是Spring Webflow的新手,我正在向Spring MVC + WebFlow遷移和舊的Java MVC應用程序。在spring webflow視圖中使用請求參數是否可行?

我們的舊應用程序中的導航工作與這樣的網址,如/MyServlet?action=myAction&status=1,我們需要在新的應用程序中保留它們。因此,我們必須創建一個控制所有的請求與

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

到MyServlet在此控制器,我們有誰執行動作舊servlet代碼的控制器。該解決方案允許我們在Spring控制下使用舊代碼。

現在我們要使用WebFlow,但所有視圖都用上面提到的URL來表示,當我嘗試創建一個流時,它似乎是無效的。我有以下錯誤:

The reference to entity "action" must end with the ';' delimiter

這是我的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> 

是否可以使用URL在春季Webflow的參數?我怎麼能這樣做?

非常感謝。

回答

0

Spring WebFlow具有自己的URL結構,一個流中的所有狀態都爲整個流共享一個URL。所以你不能維護你當前的URL結構並同時使用Spring WebFlow。因此,流中的各個狀態不可直接訪問,即使您可以使用類似mod_rewrite的東西來轉換URL,您也會嘗試跳到流的中間,這不是Spring WebFlow的工作方式。

此外,view-state中的view應該是一種視圖呈現技術,如JSP或Tile定義。它是特定視圖的內部參考,而不是外部用戶可見的URL。

0
The reference to entity "action" must end with the ';' delimiter 

當編寫字符&來傳遞URL中的參數時出現此錯誤。只要寫&amp;而不是字符和錯誤應該是固定的。

希望這會有所幫助。

相關問題