qq_37829866 2017-03-09 06:27 采纳率: 0%
浏览 770

struts2 为什么报不能实例化这个错误

Java类
package com.osp.action;

public class Addaction {
private String message;

// 添加操作
public String add() {
    message = "==========执行了AddAction 类的add()方法==========";
    return "Add";
}

public String getMessage() {
    return message;
}

}
package com.osp.action;

public class Deleteaction {
private String message;

// 删除操作
public String delete() {
    message = "==========执行了 DeleteAction类的delete()方法==========";
    return "Delete";
}

public String getMessage() {
    return message;
}

}
package com.osp.action;

public class Queryaction {
private String message;

// 查询操作
public String query() {
    message = "==========执行了 QueryAction类的query()方法==========";
    return "Query";
}

public String getMessage() {
    return message;
}

}
package com.osp.action;

public class Updateaction {
private String message;

// 修改操作
public String update() {
    message = "==========执行了 UpdateAction类的update()方法==========";
    return "Update";
}

public String getMessage() {
    return message;
}

}
13:37:48
凯旋的勇士 2017/3/9 13:37:48
struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">



<!-- Action中指定业务方法的调用—— 使用通配符*及表达式{n} -->

{1}.jsp



13:38:06
凯旋的勇士 2017/3/9 13:38:06
5个jsp
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


添加操作
<br><br> .msg{<br> font-size:30px;<br> }<br>



${message}



<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


删除操作
<br><br> .msg{<br> font-size:30px;<br> }<br>



${message}



<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


添加操作
<br><br> .msg{<br> font-size:30px;<br> }<br> a{<br> text-decoration: none;<br> }<br> h1{<br> color:blue;<br><br> text-align:center;<br><br> }<br>


工作任务6:Action中指定业务方法的调用 ——使用通配符*及表达式{n}


案例2:
(练习)提问:若把案例1中 的UserManagerAction类拆分成4个Action类(即AddAction 、DeleteAction、UpdateAction和QueryAction),实现同 样功能,如何配置struts.xml?







<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


查询操作
<br><br> .msg{<br> font-size:30px;<br> }<br>



${message}



<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


修改操作
<br><br> .msg{<br> font-size:30px;<br> }<br>



${message}



web.xml
<?xml version="1.0" encoding="UTF-8"?>


struts2
org.apache.struts2.dispatcher.ng.filter.Struts PrepareAndExecuteFilter


struts2
*.action

凯旋的勇士 2017/3/9 13:39:08
报的错误:
HTTP Status 500 - com.osp.action.Addaction.Add()

type Exception report

message com.osp.action.Addaction.Add()

description The server encountered an internal error that prevented it from fulfilling this request.

exception
java.lang.NoSuchMethodException: com.osp.action.Addaction.Add()
ognl.OgnlRuntime.callAppropriateMethod (OgnlRuntime.java:1246)
ognl.ObjectMethodAccessor.callMethod (ObjectMethodAccessor.java:68)
com.opensymphony.xwork2.ognl.accessor.XWorkMethodAcc essor.callMethodWithDebugInfo (XWorkMethodAccessor.java:117)
com.opensymphony.xwork2.ognl.accessor.XWorkMethodAcc essor.callMethod(XWorkMethodAccessor.java:108)
ognl.OgnlRuntime.callMethod (OgnlRuntime.java:1369)
ognl.ASTMethod.getValueBody (ASTMethod.java:90)
ognl.SimpleNode.evaluateGetValueBody (SimpleNode.java:212)
ognl.SimpleNode.getValue (SimpleNode.java:258)
ognl.Ognl.getValue(Ognl.java:494)
ognl.Ognl.getValue(Ognl.java:458)
com.opensymphony.xwork2.ognl.OgnlUtil $2.execute(OgnlUtil.java:309)
com.opensymphony.xwork2.ognl.OgnlUtil.compileAndExec ute(OgnlUtil.java:340)
com.opensymphony.xwork2.ognl.OgnlUtil.getValue (OgnlUtil.java:307)
com.opensymphony.xwork2.DefaultActionInvocation.invo keAction(DefaultActionInvocation.java:423)
com.opensymphony.xwork2.DefaultActionInvocation.invo keActionOnly(DefaultActionInvocation.java:287)
com.opensymphony.xwork2.DefaultActionInvocation.invo ke(DefaultActionInvocation.java:250)
org.apache.struts2.interceptor.DeprecationIntercepto r.intercept(DeprecationInterceptor.java:41)
com.opensymphony.xwork2.DefaultActionInvocation.invo ke(DefaultActionInvocation.java:244)
org.apache.struts2.interceptor.debugging.DebuggingIn terceptor.intercept(DebuggingInterceptor.java:256)
com.opensymphony.xwork2.DefaultActionInvocation.invo ke(DefaultActionInvocation.java:244)

  • 写回答

1条回答 默认 最新

  • 学习记录啦啦啦啦 2017-03-09 09:02
    关注

    message 建个set方法。

    评论

报告相同问题?

悬赏问题

  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 lammps拉伸应力应变曲线分析
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划