在带有 Glassfish 4.0 和 JDK 1.7_55 的 Windows Server 上,我得到 NoClassDefFoundError 和 ClassNotFoundException,然后调用远程 bean 方法。
StandardWrapperValve[action]: Servlet.service() for servlet action threw exception
java.lang.ClassNotFoundException: com.sun.corba.ee.impl.orb.ORBSingleton
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
...
at com.sun.corba.ee.impl.presentation.rmi.codegen.CodegenStubBase.invoke(CodegenStubBase.java:226)
at dudge.ifaces.__SolutionRemote_Remote_DynamicStub.getSolutionEager(dudge/ifaces/__SolutionRemote_Remote_DynamicStub.java)
at dudge.ifaces._SolutionRemote_Wrapper.getSolutionEager(dudge/ifaces/_SolutionRemote_Wrapper.java)
at dudge.DudgeBean.submitSolution(DudgeBean.java:119)
...
DudgeBean 和 SolutionRemote 是我的类。
和
StandardWrapperValve[action]: Servlet.service() for servlet action threw exception
java.lang.NoClassDefFoundError: Could not initialize class com.sun.corba.ee.impl.io.IIOPInputStream
at com.sun.corba.ee.impl.io.ValueHandlerImpl.createInputStream(ValueHandlerImpl.java:820)
...
at com.sun.corba.ee.impl.presentation.rmi.codegen.CodegenStubBase.invoke(CodegenStubBase.java:226)
at dudge.__PermissionCheckerRemote_Remote_DynamicStub.canGetUser(dudge/__PermissionCheckerRemote_Remote_DynamicStub.java)
at dudge._PermissionCheckerRemote_Wrapper.canGetUser(dudge/_PermissionCheckerRemote_Wrapper.java)
at dudge.web.actions.UsersAction.view(UsersAction.java:95)
...
UsersActionand 和 PermissionCheckerRemote 是我的类。
在开发系统上一切正常,我找不到区别。 可能是什么原因造成的?
最佳答案
这似乎是与 JDK 1.7_55 相关的错误。 降级到 JDK 1.7_51 后问题解决。
Glassfish 错误跟踪器中有一个关于此错误的条目。 https://java.net/jira/browse/GLASSFISH-21047
关于jakarta-ee - 访问远程 bean 时 CORBA 内部出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23291520/