Java 仅在RedHat上出现奇怪的OGNL错误:在除生产之外的任何地方都能正常工作
我有一段代码在Struts2/Spring/Hibernate/Tomcat应用程序中执行非常标准的CRUD操作 问题是,只有在我们的生产服务器上,我才能获得以下堆栈跟踪。它在我的64位Mac和虚拟机中的32位Ubuntu上都非常有效。我仅在此RedHat 4.1.2服务器上获得错误:Java 仅在RedHat上出现奇怪的OGNL错误:在除生产之外的任何地方都能正常工作,java,spring,hibernate,struts2,redhat,Java,Spring,Hibernate,Struts2,Redhat,我有一段代码在Struts2/Spring/Hibernate/Tomcat应用程序中执行非常标准的CRUD操作 问题是,只有在我们的生产服务器上,我才能获得以下堆栈跟踪。它在我的64位Mac和虚拟机中的32位Ubuntu上都非常有效。我仅在此RedHat 4.1.2服务器上获得错误: ERROR InstantiatingNullHandler: Could not create and/or set value back on to object ognl.NoSuchPropertyExc
ERROR InstantiatingNullHandler: Could not create and/or set value back on to object
ognl.NoSuchPropertyException: com.martin.action.assignment.SaveAssignment.course
[java.lang.IllegalAccessException: Class ognl.OgnlRuntime can not access a member
of class com.martin.action.assignment.EditAssignment with modifiers "protected"]
我尝试在RedHat服务器上使用JRockit而不是Oracle JDK。。。同样的错误
究竟是什么导致了这个问题
顺便说一句:OGNL jar是OGNL-2.6.11您有com.martin.action.assignment.EditAssignment类的一些受保护成员。尝试将其更改为public。谢谢,但为什么这只会在RedHat Linux上引发异常?您是否尝试过将OGNL升级到3.0.x?除非您使用的是非常旧的Struts2.0?,否则它是正确的选择。试试看,看你是否也会犯同样的错误+1顺便说一句。。。