Structs2中的HTTP Status 404 - No result defined for action** and result **

在通过Structs2进行页面登录配置时有可能会出现HTTP Status 404 - No result defined for action** and result **类似的错误,其意思就是说没有在structs.xml配置文件中没有配置action为***的类的result的返回,在网上我也去查了很多原因,我的java代码如下:

{
   addActionError("输入的验证码错!");
   return "fail";
  }

配置文件如下:

<package name="demo" extends="struts-default">

<action name="welcome" class="welcome">
           <result name="input">/welcome.jsp</result>
           <result name="fail">/welcome.jsp</result>
           <result name="success">/index.jsp</result>
</action>

</package>

页面调用使用的是struct2的标签库,如下:

<s:form action="welcome.action" name="wel">
           <s:textfield name="userName" label="用户名" />
           <s:textfield name="password" label="密码" />
           <s:textfield name="verCode" label="验证码" value="" />
           <s:submit value="登录" />

</s:form>

当然通过页面的“登录”按钮提交后java里面的代码都是可以正常执行并且返回的,但是在页面上就是出现上面的404错误,找了很久的原因,但是还是没有发现,最后想想是不是配置的action的name出错了,因为前面用过login作为action的名字,从login改为welcome也还是404的错误,这次把welcome改为wel居然能够成功提交并显示页面,最后想了下是不是login和welcome都是struts2的关键字或者是在其他工程代码里引用过才导致出现404错误。

猜你喜欢

转载自357029540.iteye.com/blog/2203537