问题描述
先简单介绍一下情况,一个简单的输入用户名和密码的界面,输入后会查询后台数据库中用户名和密码是不是都为admin,是则返回一个界面,不是则返回原登陆界面,下面是代码:(只写重要部分了)登陆界面:<formaction="login.action"method="post"><tablealign="center"border=1>“具体的界面布局就不写了”</table></form>strut.xml文件中加入了映射<includefile="../config/user/struts_user.xml"/>而struts_user.xml文件代码为:<packagename="user"extends="common"><actionname="login"class="com.neusoft.um.user.action.UserAction"method="login"><resultname="input">/UM/login.jsp</result><resultname="success">/UM/user/userManage.jsp</result></action></package>在UserAction中就执行相应的方法了,可是我在点提交按钮的时候给我显示的页面时404提示的错误信息是ThereisnoActionmappedfornamespace/andactionnamelogin.我不明白自己哪块连错了啊,为什么它就是找不到action呢?求解脱
解决方案
解决方案二:
在你的这个里面<packagename="user"extends="common"><actionname="login"class="com.neusoft.um.user.action.UserAction"method="login"><resultname="input">/UM/login.jsp</result><resultname="success">/UM/user/userManage.jsp</result></action></package>这个应该改为<resultname="input">/UM/user/login.jsp</result>或者将action中name和method的参数区别一下。
解决方案三:
<packagename="user"extends="common"><actionname="login"class="com.neusoft.um.user.action.UserAction"method="login"><resultname="input">UM/login.jsp</result><resultname="success">UM/user/userManage.jsp</result></action></package>将/UM/login.jsp改成UM/login.jsp
解决方案四:
楼上说的对!
解决方案五:
和你们说的没关系,我这错误是找不到action,我试过了加不加/没什么区别的。
解决方案六:
是不是还有别的package你给package加个namespace试试
解决方案七:
可以用httpwatch抓个包试一下,点击提交按钮时,请求地址是什么,或者直接在浏览器输入上下文/login.action能不能访问,比对一下这两者的区别
解决方案八:
package继承默认的strutspackage