java.lang.NoSuchMethodException 错误
报错:
Stacktraces
java.lang.Class.getMethod(Class.java:1607)org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.getActionMethod(AnnotationValidationInterceptor.java:75)org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:47)com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:133)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:207)com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:94)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:142)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:166)com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:190)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:248)org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:485)org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:877)org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:594)org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1675)java.lang.Thread.run(Thread.java:662)action代码
package com.gssw.action;import java.util.List;import com.gssw.dao.ProDao;
import com.gssw.dao.ProTypeDao;import com.gssw.pojo.Product;
import com.gssw.pojo.ProductType;
import com.gssw.util.Pager;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;public class ProAction extends ActionSupport implements ModelDriven<Product>{private static final long serialVersionUID = 1L;
private Product pro=new Product();
private List<ProductType> proType;
private List<Product> pros;
private String op;
private Pager<Product> proPager=new Pager<Product>();
private String pno;
@Overridepublic Product getModel() {return pro;
}/* public ProAction() {
proType=pto.read();
}
*/
//private UserDao udo;
private ProDao pdo;
private ProTypeDao pto;public String list() throws Exception{
proType=pto.read();
//提供总记录数的
proPager.setRecordCount(pdo.total());
proPager.setPageSize(5);
proPager.setPageNo(pno);
pros=pdo.read(proPager.getPageNo(), proPager.getPageSize(), "proName desc,proId desc");
proPager.setData(pros);
proPager.setUrl("pro_list.action");return "list";
}public String create(){
op="create";return "input";
}public String updata(){
op="updata";
//这里要读一下数据库页面只是返回了一个id的值
pro=pdo.read(pro.getProId());
return "input";
}
public String createOrUpdata() throws Exception{
System.out.println(pro.toString());
if("create".equals(op)){pdo.create(pro);
}
else if("updata".equals(op)){
pdo.update(pro);
}
return list();
}
public String delete() throws Exception{
pdo.delete((int) pro.getProId());
return list();
}
//set();get();
public List<ProductType> getProType() {
return proType;
}public void setProType(List<ProductType> proType) {
this.proType = proType;
}public List<Product> getPros() {
return pros;
}public void setPros(List<Product> pros) {
this.pros = pros;
}public String getOp() {
return op;
}public void setOp(String op) {
this.op = op;
}public String getPno() {
return pno;
}public void setPno(String pno) {
this.pno = pno;
}public Product getPro() {
return pro;
}public Pager<Product> getProPager() {
return proPager;
}public void setProPager(Pager<Product> proPager) {
this.proPager = proPager;
}/* DI */public void setPdo(ProDao pdo) {
this.pdo = pdo;
}public void setPto(ProTypeDao pto) {
this.pto = pto;
}
}
struts.xml
<struts><constant name="struts.devMode" value="true" /><!-- 使用最简单主题,防止生成一些不需要的标签 --><constant name="struts.ui.theme" value="simple" /><!-- struts2不拦截kindeditor在线编辑器中的jsp --><constant name="struts.action.excludePattern" value="/kindeditor/jsp/.*" /><!-- spring插件整合Struts2 --><constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" /><package name="default" namespace="/" extends="struts-default"><default-action-ref name="default" /><global-results><result name="login" type="redirect">/admin/login.jsp</result><result name="index">/index.jsp</result></global-results><action name="log*" class="logopaction" method="log{1}"><result name="reindex" type="redirect">/admin/pro_list.action</result><result name="input">/admin/login.jsp</result></action><action name="pro_*" class="proaction" method="{1}"><result name="list">/admin/pages/dept/list.jsp</result><result name="input">/admin/pages/dept/${op}.jsp</result></action><action name="default"><result type="redirect">/admin/login.jsp</result></action></package></struts>
update.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib uri="/struts-tags" prefix="s" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> <style type="text/css">#error { color: red; } </style> </head> <body><div id="content"><h1 class="title">修改产品</h1><div id="error"><c:forEach items="${errors }" var="error"><li>${error.value[0] }</li></c:forEach></div><div id="input"><form method="post" action="pro_createOrUpdate.action"><input type="hidden" name="op" value="update"><input type="hidden" name="proId" value="${pro.proId }"><ul><li><label>proName</label><input type="text" name="proName" value="${pro.proName }"></li><li><label>proPrice</label><input type="text" name="proPrice" value="${pro.proPrice }"></li><li><label>proNum</label><input type="text" name="proNum" value="${pro.proNum }"></li><li><input type="submit" value="保存"><input type="button" value="取消" οnclick="location.href='pro_list.action'"></li></ul></form></div></div></body> </html>
错误最终找到了 是jsp文件中提交的地址和对应的action中的方法名有出入 ~还是要细心啊
转载于:https://www.cnblogs.com/tenney/p/4039203.html
java.lang.NoSuchMethodException 错误相关推荐
- java.lang.NoSuchMethodException错误
Caused by: java.lang.NoSuchMethodException: Unknown property '' on class 'class model.MManifestCustX ...
- Cause: java.lang.NoSuchMethodException: com.taiji.dao.UserDao<init>错误
java.lang.NoSuchMethodException: com.taiji.dao.UserDao.(), 出现这个错误的原因是因为我的UserMapper.xml文件中 resultTyp ...
- 错误处理:java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter
部署项目时,启动Tomcat一直出错:java.lang.NoSuchMethodException: org.apache.catalina.deploy.WebXml addFilter SEVE ...
- java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectProvider.<init>()的问题解决
在使用通用mapper进行crud的时候运行报java.lang.NoSuchMethodException: tk.mybatis.mapper.provider.base.BaseSelectPr ...
- SpringAop对struts2的Action设置切面织入时报错java.lang.NoSuchMethodException
学习springAop,尝试对struts2的Action层使用Aop切面实现日志的打印. 执行出现报错:java.lang.NoSuchMethodException. 查阅资料解决办法:sprin ...
- struts2的java.lang.NoSuchMethodException异常处理
不久前在学习struts时出现这个错误,在网上搜索了半天,发现答案不一.将其总结如下,以方便大家参考. 1. 你有没有试试看 其它的方法能不能用,要是都是这种情况的话,可能是你的Action类没有继承 ...
- 报错,java.lang.NoSuchMethodException: java.awt.print.Pageable
问题: 2020-11-06 17:25:30.551 ERROR 5884 --- [io-13000-exec-8] o.a.c.c.C.[.[.[/].[dispatcherServlet] ...
- 使用反射时出现java.lang.NoSuchMethodException
问题:在用反射时出现错误java.lang.NoSuchMethodException 原因:反射调用的方法参数列表中包含int.boolean等类型,使用反射时将这些参数对应的类写成了Integer ...
- Struts2报错Caused by: java.lang.NoSuchMethodException: bean.Student.init()
错误 错误日志 21-Oct-2019 15:14:13.922 SEVERE [http-apr-8080-exec-8] com.opensymphony.xwork2.util.logging. ...
最新文章
- 《Build your own AngularJS》笔记分享
- 【Web安全】先进技术WebSocket下安全测试
- svn回退到历史版本
- webstorm怎么跑项目_快讯!明年厦门中考体育项目定了!初三家长抽的!其他地市抽到啥?...
- CentOS7安装wdCP面板,快速搭建web运行环境(图文详解)
- hdu 2563
- 转载:二叉树的前中后和层序遍历详细图解(递归和非递归写法)
- CodeForces - 1527E Partition Game(dp+线段树)
- linux-centos7环境搭建
- HTTP 和 HTTPS 两种传输协议各自含义是什么?二者使用有什么区别?
- 【git系列】github同步原作者代码
- python 流式编程_Java8 Stream流式编程,极大解放你的生产力!
- Unity脚本中查找的几种方法优劣以及坑
- YUV420->RGB888格式转换的CPP实现
- Html论坛提问页面,技术分享 - 制作论坛发帖页面(采用html()方式、操作节点的方式)...
- B/S 架构 与 C/S 架构
- 与电容有关的几个经典电路--微分、积分、采样与电荷泵
- B. Infinite Prefixes
- Android Studio 全局搜索中文字符
- Android 求时间差