glassfish
  1. glassfish
  2. GLASSFISH-17222

Remote EJB / SerialInitContextFactory "Cannot modify frozen instance for org.omg.CORBA.portable.InputStream"

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 3.1, 3.1.1
    • Fix Version/s: None
    • Component/s: orb
    • Labels:
      None
    • Environment:

      Win32, JDK 6, Windows 7

      Description

      I get this exception when I lookup an object deployed as an EAR containing an EJB jar:

      20/08/2011 05:38:15 org.glassfish.enterprise.iiop.impl.GlassFishORBManager initORB
      GRAVE: enterprise_util.excep_in_createorb
      java.lang.IllegalStateException: Cannot modify frozen instance for org.omg.CORBA.portable.InputStream
      at org.glassfish.gmbal.typelib.DeclarationFactory$EvaluatedClassDeclarationImpl.checkFrozen(DeclarationFactory.java:380)
      at org.glassfish.gmbal.typelib.DeclarationFactory$EvaluatedClassDeclarationImpl.inheritance(DeclarationFactory.java:390)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass(TypeEvaluator.java:716)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration(TypeEvaluator.java:685)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration(TypeEvaluator.java:467)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType(TypeEvaluator.java:415)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$1.evaluate(TypeEvaluator.java:558)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$1.evaluate(TypeEvaluator.java:556)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:95)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:118)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitMethodDeclaration(TypeEvaluator.java:554)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.access$900(TypeEvaluator.java:394)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:733)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:729)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:95)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:118)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass(TypeEvaluator.java:727)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration(TypeEvaluator.java:685)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration(TypeEvaluator.java:467)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType(TypeEvaluator.java:415)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$2.evaluate(TypeEvaluator.java:711)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$2.evaluate(TypeEvaluator.java:709)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:95)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:118)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass(TypeEvaluator.java:707)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration(TypeEvaluator.java:685)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration(TypeEvaluator.java:467)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType(TypeEvaluator.java:415)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitMethodDeclaration(TypeEvaluator.java:570)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.access$900(TypeEvaluator.java:394)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:733)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:729)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:95)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:118)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass(TypeEvaluator.java:727)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration(TypeEvaluator.java:685)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration(TypeEvaluator.java:467)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType(TypeEvaluator.java:415)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitMethodDeclaration(TypeEvaluator.java:570)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.access$900(TypeEvaluator.java:394)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:733)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:729)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:95)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:118)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass(TypeEvaluator.java:727)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration(TypeEvaluator.java:685)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration(TypeEvaluator.java:467)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType(TypeEvaluator.java:415)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitMethodDeclaration(TypeEvaluator.java:570)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.access$900(TypeEvaluator.java:394)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:733)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$4.evaluate(TypeEvaluator.java:729)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:95)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:118)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass(TypeEvaluator.java:727)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration(TypeEvaluator.java:685)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration(TypeEvaluator.java:467)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType(TypeEvaluator.java:415)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$2.evaluate(TypeEvaluator.java:711)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor$2.evaluate(TypeEvaluator.java:709)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:95)
      at org.glassfish.gmbal.generic.Algorithms.map(Algorithms.java:118)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.processClass(TypeEvaluator.java:707)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.getCorrectDeclaration(TypeEvaluator.java:685)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.visitClassDeclaration(TypeEvaluator.java:467)
      at org.glassfish.gmbal.typelib.TypeEvaluator$TypeEvaluationVisitor.evaluateType(TypeEvaluator.java:415)
      at org.glassfish.gmbal.typelib.TypeEvaluator.getEvaluatedType(TypeEvaluator.java:318)
      at org.glassfish.gmbal.impl.ManagedObjectManagerImpl.constructMBean(ManagedObjectManagerImpl.java:659)
      at org.glassfish.gmbal.impl.MBeanTree.setRoot(MBeanTree.java:98)
      at org.glassfish.gmbal.impl.ManagedObjectManagerImpl.createRoot(ManagedObjectManagerImpl.java:451)
      at com.sun.corba.ee.spi.orb.ORB.createORBManagedObjectManager(ORB.java:790)
      at com.sun.corba.ee.impl.orb.ORBImpl.initManagedObjectManager(ORBImpl.java:401)
      at com.sun.corba.ee.impl.orb.ORBImpl.postInit(ORBImpl.java:581)
      at com.sun.corba.ee.impl.orb.ORBImpl.set_parameters(ORBImpl.java:704)
      at com.sun.corba.ee.impl.orb.ORBImpl.setParameters(ORBImpl.java:691)
      at com.sun.corba.ee.spi.osgi.ORBFactory.initialize(ORBFactory.java:107)
      at org.glassfish.enterprise.iiop.impl.GlassFishORBManager.initORB(GlassFishORBManager.java:581)
      at org.glassfish.enterprise.iiop.impl.GlassFishORBManager.getORB(GlassFishORBManager.java:263)
      at org.glassfish.enterprise.iiop.impl.GlassFishORBFactoryImpl.createORB(GlassFishORBFactoryImpl.java:93)
      at org.glassfish.enterprise.iiop.api.GlassFishORBHelper.getORB(GlassFishORBHelper.java:152)
      at com.sun.enterprise.naming.impl.SerialContext.getORB(SerialContext.java:365)
      at com.sun.enterprise.naming.impl.SerialContext.getProviderCacheKey(SerialContext.java:372)
      at com.sun.enterprise.naming.impl.SerialContext.getRemoteProvider(SerialContext.java:402)
      at com.sun.enterprise.naming.impl.SerialContext.getProvider(SerialContext.java:347)
      at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:504)
      at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455)
      at javax.naming.InitialContext.lookup(InitialContext.java:392)
      at us.fiveguns.rokkitdelivery.service.impl.ejb.EjbServiceFactory.getService(EjbServiceFactory.java:183)
      at us.fiveguns.rokkitdelivery.service.impl.ejb.EjbServiceFactory.getSecurityService(EjbServiceFactory.java:115)
      at us.fiveguns.rokkitdelivery.admin.jsf.controllers.SecurityController.logIn(SecurityController.java:289)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)

      As first, it seems fine - It works when using In-VM, however this happens when remoting the connection. HEre is the code for fetching the Interface:

      Properties props = new Properties();

      props.setProperty("java.naming.factory.initial",
      "com.sun.enterprise.naming.SerialInitContextFactory");

      props.setProperty("java.naming.factory.url.pkgs",
      "com.sun.enterprise.naming");

      props.setProperty("java.naming.factory.state",
      "com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl");

      //props.setProperty("java.naming.factory.initial", "com.sun.jndi.cosnaming.CNCtxFactory");

      // optional. Defaults to localhost. Only needed if web server is running
      // on a different host than the appserver
      props.setProperty("org.omg.CORBA.ORBInitialHost", "localhost");

      // optional. Defaults to 3700. Only needed if target orb port is not
      // 3700.
      props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");

      try

      { this.context = new InitialContext(props); }

      catch (Exception exc)

      { throw new RuntimeException(exc); }

        Activity

        Hide
        sbahloul79 added a comment -

        I encountered this error because of a parent class loading issue on Jetty, that has been fixed with the settings specified in http://docs.codehaus.org/display/JETTY/Remote+Glassfish+EJBs+from+Jetty (parentLoaderPriority)

        Show
        sbahloul79 added a comment - I encountered this error because of a parent class loading issue on Jetty, that has been fixed with the settings specified in http://docs.codehaus.org/display/JETTY/Remote+Glassfish+EJBs+from+Jetty (parentLoaderPriority)

          People

          • Assignee:
            Harshad Vilekar
            Reporter:
            aldrinleal
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated: