struts 2中的http状态404结果

时间:2013-07-02 09:17:37

标签: struts2

我正在学习struts 2.
我创建了一个简单的项目,可以添加和列出用户添加的PRODUCT。 list是我的第一页,显示添加的所有产品。这是我的struts.xml文件:

<struts>

<package name="default" namespace="/" extends="struts-default">

    <default-action-ref name="listProduct" />

    <action name="listProduct" class="control.ProductHandler" method="list">
        <result name="success">/list.jsp</result>
    </action>
    <action name="addProduct" class="control.ProductHandler" method="add">
        <result name="success">/listProduct</result>
    </action>

    <action name="*Form">
        <result>{1}.jsp</result>
    </action>
</package>

</struts>

当我在浏览器中输入localhost:8080/product时,它会向我显示list.jsp文件。在这个文件中我有一个链接,我可以转到add.jsp文件。此链接的href为addForm 在add.jsp文件中我有3个文本字段和一个提交按钮。当输入数据时添加了动作类返回“成功”并且我最多转到localhost:8080/product(默认页面)但它显示我:

  

HTTP状态404 - / product / listProduct

这是我的行动档案:

public String list(){
    products=Database.get();
    return "success";
}

public String add(){
    if (add!=null){
        Product product=new Product(name, producer, price);
        Database.add(product);
    }
    return "success";
}

我的错误在哪里? 感谢。

1 个答案:

答案 0 :(得分:2)

要重定向到其他操作,请使用redirectAction结果类型。

<action name="addProduct" class="control.ProductHandler" method="add">
  <result name="success" type="redirectAction">listProduct</result>
</action>