使用通配符方式时,一直报404错误

来源:4-4 动态方法调用-深入Struts2

qq_阳光下的海风_0

2017-09-01 15:47

struts.xml中的代码:

<struts>
    <package name="default" namespace="/" extends="struts-default" >
       <action name="Helloworld_*" method="{1}" class="com.imooc.action.Helloworld">
            <result>/result.jsp</result>
            <result name="a">/{1}.jsp</result>
            <result name="up">/{1}.jsp</result>
       </action>
    </package>
 </struts>

Action中的代码:

public class Helloworld extends ActionSupport {
	
	public String add(){
		return "add";
	}
	public String update(){
		return "update";
	}
	@Override
	public String execute() throws Exception {
		System.out.println("执行Action");
		return SUCCESS;
	}

}

输入:http://localhost:8080/HelloWord/Helloworld.action

正常运行,但是输入:http://localhost:8080/HelloWord/Helloworld_add.action

就报404错误,自己看了好久,感觉代码没啥毛病呀,就是运行 不出来

写回答 关注

1回答

  • IU_
    2017-09-02 20:53:27
    已采纳

     <result name="a">/{1}.jsp</result>

    那个你的{1}是add 他会执行add方法 但是你的返回是 add  result里面没有add 所有会报404  你把name=“a”修改成add 就好了。。或者return “a”

    qq_阳光下...

    我明白了,也就是说,方法的返回值需要和<result/>中的name属性值一一对应。

    2017-09-04 15:06:57

    共 2 条回复 >

Struts2入门

本教程带你踏上Struts2学习之旅,对Struts2进行更深入讲解

95061 学习 · 456 问题

查看课程

相似问题