2012-08-29 155 views
0

在的struts-config我有這樣的動作:的Struts-config.xml配置映射

<action 
     path="/action/basket" 
     type="com.xxx.BasketAction" 
     name="basketForm" 
     scope="session" 
     unknown="false" 
     validate="false" 
    > 
     <forward 
     name="displayItems" 
     path="EshelfItems" 
     redirect="false" 
     /> 
     <forward 
     name="displayItems-redirect" 
     path="/action/basket.do?fn=display" 
     redirect="true" 
     /> 
     <forward 
     name="displayBasket" 
     path="/basket.jsp" 
     redirect="false" 
     /> 
    </action> 

我在哪裏可以找到/action/basket.do?fn=display映射?

+1

不確定你的意思。前面的'displayItems-redirect'應該在'com.xxx.BasketAction'的某處找到... – home

回答

0

根據http://struts.apache.org/1.x/faqs/works.html

在框架配置文件(S),你與你的應用程序,被稱爲Action類 (即 「登陸」 ==> LoginAction類的 控制器組件關聯路徑)。這告訴ActionServlet 對於傳入請求'http://myhost/myapp/login.do',它應該調用你的控制器組件LoginAction。

請注意此URL中的擴展名.do。該擴展會導致您的容器(例如Tomcat)調用ActionServlet,它將「登錄」一詞看作您想要執行的操作,即「 」。該配置被引用, 並且您的LoginAction被執行。

檢查您的BasketAction類,其中fn=display請求參數被選中。

如果找不到給定映射的操作類,那麼調試 RequestProcessor's process方法也可能很有用。

+0

死鏈接...... – Rohit

0

雅你的問題不清楚.. 當你點擊/action/basket.do?fn=display它將在你的struts配置中使用下面的映射。

<action 
     path="/action/basket" 

,然後它會執行

com.xxx.BasketAction 

,並在該類別中,如果你願意,你可以閱讀帕拉姆fn=display,然後做一個向前,將工作在你的Struts配置的<forward>...</forward>映射映射