java.lang.NoSuchFieldException: DEFAULT_PARAM

项目用的是struts 2.3.15.3 这个版本,项目中有用到 struts2-json-plugin-2.3.15.3.jar 这个jar包。当把log4j的日志级别调为error时,没出现问题。当把日志级别调为debug时,就会出现 java.lang.NoSuchFieldException: DEFAULT_PARAM.....但项目依然可以正常运行。

但我可以确定,我的项目配置是正确的。后来百度了一下,原来这是这个版本的一个bug问题,在org.apache.struts2.json.JSONResult  这个类中 是没有这个 DEFAULT_PARAM   属性的。 
有兴趣的可以打开源码看一下,就明白了,其实这个异常信息不影响使用。如果要去除这个异常信息,可以找到源码,拷贝出来,在项目中自己创建一个同样的类,路径和类名都要一样,然后在类中加上 public static final String DEFAULT_PARAM = "status";这个属性就OK了。

后来到struts官网上看了下,当前最新的struts2版本是2.3.16。果断下载下来,引入到项目中,没有这个异常了,貌似新版本中已经解决了这个问题。

时间: 2024-11-05 00:52:07

java.lang.NoSuchFieldException: DEFAULT_PARAM的相关文章

Struts2:java.lang.NoSuchFieldException: resourceEntries at java.lang.Class.getDeclaredField(Class.java:1901)

今天在做Struts2的测试用例时候,程序能正常跳转,但是在Console却报了一个错误,如下: 1 java.lang.NoSuchFieldException: resourceEntries 2 at java.lang.Class.getDeclaredField(Class.java:1901) 3 at com.opensymphony.xwork2.util.LocalizedTextUtil.clearMap(LocalizedTextUtil.java:877) 4 at co

Java 反射 java.lang.NoSuchFieldException:

异常描述:java.lang.NoSuchFieldException: 处理方式:将属性修改为public 原文地址:https://www.cnblogs.com/twuxian/p/11620028.html

出现java.lang.NoSuchFieldException resourceEntries错误的解决方法

JSP表单里面的表单输入<input type= "text" name="user">这里面的每一个输入都是一个Attribute,相当于setAttribute("name",user); 如果是提交到Action里面,则需要相应的Action有对应的同名变量定义和setter/getter方法,即使你没有用它做任何操作. Action里面的提供Setter/Getter的方法会将其取出来交给execute方法.如:type va

JAVA反射系列之Field,java.lang.reflect.Field使用获取方法

JAVA反射系列之Field,java.lang.reflect.Field使用获取方法.   转载https://my.oschina.net/u/1407116/blog/209383 摘要 java.lang.reflect.Field使用 Field. 首先必须明一点 Field类主要是用来辅助获取和操作类的属性的! 1.怎么通过反射获取类的属性 先来看JDK提供的方法有如下几种: a)Class.getDeclaredField(String name);      返回一个 Fiel

java.lang.reflect操作对象属性(域)的值

import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; /*2015-10-28*/ public class RefactorDemo { /** * @param args * @throws NoSuchFieldException * @throws SecurityException * @throws Ill

JDK源码简析--java.lang包中的基础类库

题记 JDK,Java Development Kit. 我们必须先认识到,JDK只是,仅仅是一套Java基础类库而已,是Sun公司开发的基础类库,仅此而已,JDK本身和我们自行书写总结的类库,从技术含量来说,还是在一个层级上,它们都是需要被编译成字节码,在JRE中运行的,JDK编译后的结果就是jre/lib下得rt.jar,我们学习使用它的目的是加深对Java的理解,提高我们的Java编码水平. 本系列所有文章基于的JDK版本都是1.7.16. 本节内容 在本节中,简析java.lang包所包

Java.lang.IllegalStateException Activity has been destroyed

03-04 12:01:05.468: E/AndroidRuntime(2474): FATAL EXCEPTION: main03-04 12:01:05.468: E/AndroidRuntime(2474): java.lang.IllegalStateException: Activity has been destroyed03-04 12:01:05.468: E/AndroidRuntime(2474):     at android.support.v4.app.Fragmen

JDK框架简析--java.lang包中的基础类库、基础数据类型

题记 JDK.Java Development Kit. 我们必须先认识到,JDK不过,不过一套Java基础类库而已,是Sun公司开发的基础类库,仅此而已,JDK本身和我们自行书写总结的类库,从技术含量来说.还是在一个层级上,它们都是须要被编译成字节码.在JRE中执行的,JDK编译后的结果就是jre/lib下的rt.jar,我们学习使用它的目的是加深对Java的理解,提高我们的Java编码水平. 本系列全部文章基于的JDK版本号都是1.7.16. 源代码下载地址:https://jdk7.jav

java.lang

接口 Appendable:能够被添加char序列和值的对象 BufferedWriter, CharArrayWriter, CharBuffer, FileWriter, FilterWriter, LogStream, OutputStreamWriter, PipedWriter, PrintStream, PrintWriter, StringBuffer, StringBuilder, StringWriter, Writer /* append(char c):向此Appendab