3

I have an enterprise application running in the following environment.

  • Mojarra 2.2.6
  • PrimeFaces 5.0 final
  • PrimeFaces Extension 2.0 final
  • OmniFaces 1.8.1
  • EclipseLink 2.5.1 having JPA 2.1
  • GlashFish 4.0
  • NetBeans IDE 8.0
  • JDK 1.8

Today I have upgraded from JDK 1.7 (jdk-7u11-windows-i586) to JDK 1.8 (jdk-8u5-windows-i586).


Everything except remote EJBs runs fine (there is no problem with local EJBs. They work just fine as usual).

In case of remote EJBs, it causes the following exception to be thrown.

javax.ejb.EJBException: java.rmi.MarshalException: CORBA MARSHAL 1330446346 Maybe; nested exception is: 
    org.omg.CORBA.MARSHAL: WARNING: 00810010: Error from readValue on ValueHandler in CDRInputStream  vmcid: OMG  minor code: 10 completed: Maybe
    at admin.beans._ZoneBeanRemote_Wrapper.getList(admin/beans/_ZoneBeanRemote_Wrapper.java)
    at admin.bean.ZoneManagedBean.load(ZoneManagedBean.java:213)
    at org.primefaces.component.datatable.DataTable.loadLazyData(DataTable.java:815)
    at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:94)
    at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:82)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:85)
    at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:68)
    at org.primefaces.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:204)
    at org.primefaces.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:121)
    at org.primefaces.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:58)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1864)
    at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:81)
    at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:68)
    at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:49)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1864)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
    at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:461)
    at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
    at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
    at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:70)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    at filter.NoCacheFilter.doFilter(NoCacheFilter.java:28)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
    at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
    at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
    at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
    at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
    at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
    at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
    at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
    at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.rmi.MarshalException: CORBA MARSHAL 1330446346 Maybe; nested exception is: 
    org.omg.CORBA.MARSHAL: WARNING: 00810010: Error from readValue on ValueHandler in CDRInputStream  vmcid: OMG  minor code: 10 completed: Maybe
    at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:266)
    at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.wrapException(Util.java:695)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:257)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:150)
    at com.sun.corba.ee.impl.presentation.rmi.codegen.CodegenStubBase.invoke(CodegenStubBase.java:226)
    at admin.beans.__ZoneBeanRemote_Remote_DynamicStub.getList(admin/beans/__ZoneBeanRemote_Remote_DynamicStub.java)
    ... 66 more
Caused by: org.omg.CORBA.MARSHAL: WARNING: 00810010: Error from readValue on ValueHandler in CDRInputStream  vmcid: OMG  minor code: 10 completed: Maybe
    at com.sun.proxy.$Proxy200.valuehandlerReadError(Unknown Source)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:912)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1005)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:823)
    at com.sun.corba.ee.impl.encoding.CDRInputObject.read_value(CDRInputObject.java:512)
    at com.sun.corba.ee.impl.copyobject.ORBStreamObjectCopierImpl.copy(ORBStreamObjectCopierImpl.java:75)
    at org.glassfish.pfl.dynamic.copyobject.impl.FallbackObjectCopierImpl.copy(FallbackObjectCopierImpl.java:64)
    at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.copyObject(Util.java:770)
    at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl.copyResult(DynamicMethodMarshallerImpl.java:472)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:241)
    ... 69 more
Caused by: java.lang.ExceptionInInitializerError
    at com.sun.corba.ee.impl.io.ValueHandlerImpl.createInputStream(ValueHandlerImpl.java:820)
    at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:263)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:903)
    ... 77 more
Caused by: org.omg.CORBA.INITIALIZE: can't instantiate default ORB implementation com.sun.corba.ee.impl.orb.ORBSingleton  vmcid: 0x0  minor code: 0  completed: No
    at org.omg.CORBA.ORB.create_impl_with_systemclassloader(ORB.java:309)
    at org.omg.CORBA.ORB.init(ORB.java:294)
    at com.sun.corba.ee.impl.io.IIOPInputStream.<clinit>(IIOPInputStream.java:187)
    ... 80 more
Caused by: java.lang.ClassNotFoundException: com.sun.corba.ee.impl.orb.ORBSingleton
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:340)
    at org.omg.CORBA.ORB.create_impl_with_systemclassloader(ORB.java:306)
    ... 82 more

Info:   Exception when handling error trying to reset the response.
javax.ejb.EJBException: java.rmi.MarshalException: CORBA MARSHAL 1330446346 Maybe; nested exception is: 
    org.omg.CORBA.MARSHAL: WARNING: 00810010: Error from readValue on ValueHandler in CDRInputStream  vmcid: OMG  minor code: 10 completed: Maybe
    at admin.beans._ZoneBeanRemote_Wrapper.getList(admin/beans/_ZoneBeanRemote_Wrapper.java)
    at admin.bean.ZoneManagedBean.load(ZoneManagedBean.java:213)
    at org.primefaces.component.datatable.DataTable.loadLazyData(DataTable.java:815)
    at org.primefaces.component.datatable.DataTableRenderer.preRender(DataTableRenderer.java:94)
    at org.primefaces.component.datatable.DataTableRenderer.encodeEnd(DataTableRenderer.java:82)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:85)
    at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:68)
    at org.primefaces.component.panel.PanelRenderer.encodeContent(PanelRenderer.java:204)
    at org.primefaces.component.panel.PanelRenderer.encodeMarkup(PanelRenderer.java:121)
    at org.primefaces.component.panel.PanelRenderer.encodeEnd(PanelRenderer.java:58)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1864)
    at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
    at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
    at org.primefaces.renderkit.CoreRenderer.renderChild(CoreRenderer.java:81)
    at org.primefaces.renderkit.CoreRenderer.renderChildren(CoreRenderer.java:68)
    at org.primefaces.component.layout.LayoutUnitRenderer.encodeEnd(LayoutUnitRenderer.java:49)
    at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1864)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
    at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:461)
    at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
    at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
    at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
    at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    at org.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:70)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    at filter.NoCacheFilter.doFilter(NoCacheFilter.java:28)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
    at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
    at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
    at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
    at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:188)
    at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
    at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
    at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
    at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
    at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
    at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
    at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
    at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
    at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
    at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.rmi.MarshalException: CORBA MARSHAL 1330446346 Maybe; nested exception is: 
    org.omg.CORBA.MARSHAL: WARNING: 00810010: Error from readValue on ValueHandler in CDRInputStream  vmcid: OMG  minor code: 10 completed: Maybe
    at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.mapSystemException(Util.java:266)
    at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.wrapException(Util.java:695)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:257)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.invoke(StubInvocationHandlerImpl.java:150)
    at com.sun.corba.ee.impl.presentation.rmi.codegen.CodegenStubBase.invoke(CodegenStubBase.java:226)
    at admin.beans.__ZoneBeanRemote_Remote_DynamicStub.getList(admin/beans/__ZoneBeanRemote_Remote_DynamicStub.java)
    ... 66 more
Caused by: org.omg.CORBA.MARSHAL: WARNING: 00810010: Error from readValue on ValueHandler in CDRInputStream  vmcid: OMG  minor code: 10 completed: Maybe
    at com.sun.proxy.$Proxy200.valuehandlerReadError(Unknown Source)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:912)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:1005)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.read_value(CDRInputStream_1_0.java:823)
    at com.sun.corba.ee.impl.encoding.CDRInputObject.read_value(CDRInputObject.java:512)
    at com.sun.corba.ee.impl.copyobject.ORBStreamObjectCopierImpl.copy(ORBStreamObjectCopierImpl.java:75)
    at org.glassfish.pfl.dynamic.copyobject.impl.FallbackObjectCopierImpl.copy(FallbackObjectCopierImpl.java:64)
    at com.sun.corba.ee.impl.javax.rmi.CORBA.Util.copyObject(Util.java:770)
    at com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl.copyResult(DynamicMethodMarshallerImpl.java:472)
    at com.sun.corba.ee.impl.presentation.rmi.StubInvocationHandlerImpl.privateInvoke(StubInvocationHandlerImpl.java:241)
    ... 69 more
Caused by: java.lang.ExceptionInInitializerError
    at com.sun.corba.ee.impl.io.ValueHandlerImpl.createInputStream(ValueHandlerImpl.java:820)
    at com.sun.corba.ee.impl.io.ValueHandlerImpl.readValue(ValueHandlerImpl.java:263)
    at com.sun.corba.ee.impl.encoding.CDRInputStream_1_0.readRMIIIOPValueType(CDRInputStream_1_0.java:903)
    ... 77 more
Caused by: org.omg.CORBA.INITIALIZE: can't instantiate default ORB implementation com.sun.corba.ee.impl.orb.ORBSingleton  vmcid: 0x0  minor code: 0  completed: No
    at org.omg.CORBA.ORB.create_impl_with_systemclassloader(ORB.java:309)
    at org.omg.CORBA.ORB.init(ORB.java:294)
    at com.sun.corba.ee.impl.io.IIOPInputStream.<clinit>(IIOPInputStream.java:187)
    ... 80 more
Caused by: java.lang.ClassNotFoundException: com.sun.corba.ee.impl.orb.ORBSingleton
    at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:340)
    at org.omg.CORBA.ORB.create_impl_with_systemclassloader(ORB.java:306)
    ... 82 more

I have another application running on Tomcat 8.0.5 using Spring 4.0 GA including Hibernate 4.3.5 final and JSF/PrimeFaces (Extensions)/OmniFaces versions as mentioned above that also works with no problems (at least until now).

The platform I'm using is Microsoft Windows XP, Professional version 2002, Service Pack 3 on which JDK 8 is not supported (there is an installer error upon launching the installer). I could somehow manage to get JDK 8 to work on Windows XP according to this and this.

The cause of the exception already appears to be reported but I don't find a solution there other than downgrading the JDK version (actually I don't understand the last comment there, "its work for me again with the new Build Version of Java: 1.8.0_20-ea-b20". I have downloaded this, 1.8.0_20-ea-b20 but it is actually not JDK. I don't know what to do with it).

I still hope there should be some way to get it to work :)


UPDATE :

The problem remains stationary on GlassFish Server 4.1.


UPDATE :

Remote EJBs worked when JDK was upgraded to JDK 8u25 (JDK 8u20 or higher is recommended for GlassFish Server 4.1). EclipseLink has a bug in conjunction with JDK 8, if you happened to use it (like me).

Community
  • 1
  • 1
Tiny
  • 27,221
  • 105
  • 339
  • 599
  • 2
    A nonsupported combination of an EOL OS and a bleeding edge Java version, so new that even Oracle's appserver in its 4.0 version appears to run on it - nasty combination :) There are issues even with the more recent versions of 7, there seems to be a general consensus that 7u51 is safe (I know that that's the combo we are running). The b20 reference is about OpenJDK, not Oracle's JDK, and that version isn't final as far as I know. My advice? Keep it simple and stick to 7u51 for now for appserver work. – fvu Jul 01 '14 at 21:31
  • Is this issue related to GlassFish or JDK (or something else like CORBA)? – Tiny Jul 02 '14 at 09:19
  • Well beginning with 7u55 there seems be a change in the code needed for CORBA that seems to have some unintended side effects that affect Glassfish (more detail in the bug report you linked to). But anyways Glassfish is only certified to run on certain JDK versions, and neither 3.1.2 nor 4.0 are certified to run on JDK8. IIRC 3.1.1 wasn't even certified to run on JDK7 at all. It may sort of work but I would advise strongly against doing so, just stick to combinations that are known to work well, in this case 7u51. – fvu Jul 02 '14 at 09:35
  • It may be related to this bug. https://java.net/jira/browse/GLASSFISH-21047 I mean, in the newer versions of Java (Oracle JDK), something has changed but Glassfish may still try to access those object in the same old way. Not sure, just a hunch... – az3 Aug 21 '14 at 12:04
  • I got the same `ClassNotFoundException` thrown at me while trying to use a `@Remote` EJB on GlassFish 4.1, Windows 7 x64 and Oracle's JDK 8u11. Deploying to WildFly 8.1.0 works just fine. – Martin Andersson Oct 15 '14 at 14:32
  • @MartinAndersson : Remote EJBs work on JDK 8u20 (or higher) (I tried on JDK 8u25). – Tiny Oct 23 '14 at 21:10

3 Answers3

2

Upgraded GlassFish Server to 4.1. Remote EJBs worked, when JDK had also been upgraded to JDK 8u25 (JDK 8u20 or higher is recommended for GlassFish Server 4.1).

Java EE 7 requires JDK 7 or above, JDK 8 u20 or above is recommended for GlassFish 4.1.

EclipseLink has a bug in conjunction with JDK 8, if you happened to use it which is scheduled to be fixed in its version 2.6.0. This appears to be some byte code related problems in entity classes and basically only occur, when lambda expressions are used in entity classes causing the java.lang.ArrayIndexOutOfBoundsException to be thrown which in essence, should be a very rare requirement to have lambda expressions in entity classes and is easily avoidable as of now.


Update :

EclipseLink 2.6.0 is now available (since March 10, 2015) in which the problem with lambda expressions (Java 8) in entity classes as mentioned earlier is not reproduced - it is fixed.

Tiny
  • 27,221
  • 105
  • 339
  • 599
2

Some java JRE versions are actually 'incompatible' with Corba support in Glassfish runtimes. Actually, looks like a pair of JRE fixes related to CORBA is causing the issue. Details to be found in Jira ticket GLASSFISH-21047

I had myself the problem org.omg.CORBA.INITIALIZE: can't instantiate default ORB implementation com.sun.corba.ee.impl.orb.ORBSingleton when trying to address remote interfaces on some session beans (not necessarily singletons) using their JNDI names (declared in annotations or using explicit lookups, made no difference) from client MDB's in a separate EAR.

That was with Glassfish 3.1.2 running on top of JRE 1.7 U60. Switching back to JRE SDK 1.7 U51 elsewhere instantly solved the issue. No other tricks or configs required.

1.7 U55, 1.7 U60, 1.8 U20 are notably reported to cause the issue.

Bernard Hauzeur
  • 2,317
  • 1
  • 18
  • 25
0

I have had similar issues on the Glassfish version 3.1.2 version running on linux, java version 1.6.45.

Adding JVM Parameter Configurations > server-config > JVM settings > add

-Dorg.omg.CORBA.ORBSingletonClass=com.sun.corba.se.impl.orb.ORBSingleton

it will fix the issue.