0

在 struts-config 我有这样的动作:

<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

4

2 回答 2

0

是的,您的问题不清楚..当您点击/action/basket.do?fn=display它时,将在您的 struts 配置中使用以下映射。

<action
      path="/action/basket"

然后它将执行

com.xxx.BasketAction

并且在那个类中,如果你愿意,你可以阅读参数fn=display,然后做一个转发,这将在<forward>...</forward>你的 struts 配置映射中工作

于 2012-08-30T09:23:32.970 回答
0

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

在框架配置文件中,您将路径与应用程序的控制器组件相关联,称为操作类(即“登录”==> LoginAction 类)。这告诉 ActionServlet 对于传入请求“http://myhost/myapp/login.do”,它应该调用您的控制器组件 LoginAction。

请注意此 URL 中的扩展名 .do。该扩展使您的容器(即Tomcat)调用ActionServlet,它将“登录”一词视为您想要做的事情。配置被引用,你的 LoginAction 被执行。

检查检查请求参数的BasketAction类。 如果找不到给定映射的操作类,那么调试 RequestProcessor 的处理方法也很有用。fn=display

于 2012-08-30T09:13:48.090 回答