java找不到action里面的方法_使用struts2时java.lang.NoSuchMethodException: com…..action报错的原因以及解决方法...

使用struts2时java.lang.NoSuchMethodException: com…..action报错的解决方法,出现这样的错误的原因是什么?主要的原因可能有以下几个:

1、java.lang.NoSuchMethodException: 是因为Action 类的方法被定义为 private 类型.

假如struts2 Action 中被访问的方法被定义成 private 类型.程序在访问其方法时,会抛出以上异常

2、Action类没有继承structs2的DispatchAction类或其它的类

试试看 如果其它的方法能不能用都是这种情况的话,这时候你可以考虑Action类没有继承structs2的DispatchAction或者其它的类。另外还有注意方法的参数列表,类型顺序要正确才行,是按照以下顺序的:

ActionMapping mapping,ActionForm form ,HttpServletRequest request,HttpServletResponse response。

3、缺少jar包java.lang.NoSuchMethodException问题

在项目中缺少某些jar文件或者某些jar文件有重复。

4、jar版本不对

很可能是是3.6jar包的问题,假如换回3.2的包又没事了

5、struts2框架出现的问题

页面中用jquery ajax 调用action的vaildUname方法,报java.lang.NoSuchMethodException错,说方法不存在。但是存在的。public String vaildUname(String loginName) throws Exception{}问题就在这个参数上,struts2中是不能有参数的

问题解决方法:

private String loginName;

public String vaildUname() throws Exception{}

loginName的getter和setter方法

此后使用ajax调用的时候,就没有问题了,struts2通过反射机制来执行action的方法,struts2规范中的action方法是不需要参数的,有参数的方法与无参数的方法是不同的方法,因此会出现找不到的问题。

6、确认你提交的是否是这个action,action里没有这个方法

本文链接地址: 使用struts2时java.lang.NoSuchMethodException: com…..action报错的原因以及解决方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值