Struts2的Action找不到是怎么回事啊?

问题描述

先简单介绍一下情况,一个简单的输入用户名和密码的界面,输入后会查询后台数据库中用户名和密码是不是都为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

时间: 2024-12-24 18:31:11

Struts2的Action找不到是怎么回事啊?的相关文章

struts2 action找不到404

问题描述 struts2 action找不到404 刚学习struts2,做到登录功能的时候登录按钮点击之后就显示action404的页面 我的工程结构是这样的 web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.s

FileUploadField 选择了一个文件,传到struts2的Action中,显示为null, 是什么问题?

问题描述 我有个formpanel, 里面有个FileUploadField,选择一个文件后,传到struts2的Action中,但是从调试的显示中看到参数没有传过去,响应的结果为null. 我想请大家帮我看看代码怎么改,多谢了 MyDesktop.ScriptWindow = Ext.extend(Ext.app.Module, {    id:'script-win',    init : function(){        this.launcher = {            tex

跪求高手指点:ssh jsp调用struts2的action是老出奇怪问题,我的action是有spring管理的。

问题描述 Struts2.2.1+Spring2.5+hebernate3.2jsp页面提交调用struts2的action时候,出如下奇怪错误,配置文件好像没问题,我觉得可能是我的环境struts2和spring的哪里有冲突,但是一直找不出来,具体配置文件我有贴在我的原帖上,原帖链接在最后,请参考,谢谢.StrutsProblemReportStrutshasdetectedanunhandledexception:Messages:issueinfo.action.thdoneActionI

struts2 在action里面什么时候要加namespace

问题描述 比如<package name="user" namespace="/user" extends="struts-default">是不是在action里面 要加,调用的时候是user/user!login在url 和result里面 直接调用user!login? 解决方案 JSP的action或者url里肯定是要加上namespace的.result也要加namespace,不过不加也可以,struts2会先到当前nam

Struts2中Action中是否需要实现Execute方法_java

今天有朋友问我Struts2中Action必须实现execute方法吗?顺利的回答出来了. 其实分两种情况: 1)如果你的Action类是继承自ActionSupport或是BaseAction的话,确切的说是重写了execute方法,ActionSupport里的默认实现就是返回"success"视图.因此,你可以不实现execute方法,只要你的struts.xml里有"success"对应的result即可. <action name="doR

struts2中action和field级别错误处理

在struts2中,一般的action都继承ActionSupport这个类,可以重写public void validate()来进行数据校验,对应提示信息来说一般有两个比较常用的方法就是this.addFieldError("field name","error message"); 和 this.addActionError("error message");两个方法. 由于在ActionSupport这个类实现了ValidationAwa

Struts2中Action接收参数的方法

Struts2中Action接收参数的方法主要有以下三种: 1.使用Action的属性接收参数:     a.定义:在Action类中定义属性,创建get和set方法:     b.接收:通过属性接收参数,如:userName:     c.发送:使用属性名传递参数,如:user1!add?userName=Magci: 2.使用DomainModel接收参数:     a.定义:定义Model类,在Action中定义Model类的对象(不需要new),创建该对象的get和set方法:    

struts2.0-spring会自动代理Struts2的action

问题描述 spring会自动代理Struts2的action 我的struts的action全部被spring配置成了aop,我的action出现的全部是代理对象. 导致我的action不能调用自己定义的方法.为什么我没有配置struts的action为aop, 但是spring全部自动配置成了aop?这spring的配置文件 <?xml version="1.0" encoding="utf-8"?> <beans xmlns="htt

javaweb-关于struts2中action层的问题

问题描述 关于struts2中action层的问题 今天公司要我把实体entity复制一份,写在一个类中,查出来的数据通过BeanUtils.copyProperties放在复制的那个类中,action不实现modelDriven,而是get/set复制的这个类.前面这些只是今天遇到的,大概说一下. 主要想问的是,公司那边不让写这一句: 那我查到的东西,怎么在jsp页面写呢?我唯一能想到的是在action中写一个List属性,get/set.不过我觉得这样好麻烦,他为什么不让使用这一句呢?我搞不