0
我有一個Java web應用與兩個支柱1和支柱2內部應用程序有幾個Struts 2名中的命名空間和Struts 1模塊。例如:Struts的1動作重定向到Struts 2的動作
/public (Struts 1 module)
/accounting (Struts 2 namespace)
/auditing (Struts 2 namespace)
/receipts (Struts 1 modules)
在我的web.xml中,Struts 1和2過濾器專門映射到正確的名稱空間/模塊。例如,
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/accounting/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>struts1</filter-name>
<url-pattern>/public/*</url-pattern>
</filter-mapping>
裏面我的Struts 1個區,我必須有一個Struts 1的動作着一個Struts 2的動作的請求。我試過如下:
<action path="/myRedirect" forward="/checkAccountRecords.action" module="accounting" />
然而,這會導致以下堆棧跟蹤:
The Struts dispatcher cannot be found. This is usually caused by using Struts tags without the associated filter. Struts tags are only usable when the request has passed through its servlet filter, which initializes the Struts dispatcher needed for this tag. - [unknown location]
我知道,這可以通過通過Struts 2的過濾器映射在Struts 1個部分網站的固定,但這會給我們的特定網站帶來問題,我想避免這樣做。
我也嘗試了動作,而不模塊:
<action path="/myRedirect" forward="/accounting/checkAccountRecords.action" />
我得到了如下因素的錯誤:
can't find /receipts/accounting/checkAccountRecords.action (file not found)
我也嘗試以下操作映射:
<action path="/myRedirect" forward="../accounting/checkAccountRecords.action" />
我以下錯誤:
Path ../accounting/checkAccountRecords.action does not start with a "/" character
那麼,還有什麼事,我可以試試嗎?如何獲得Struts 1操作以將重定向返回到Struts 2操作?