glassfish
  1. glassfish
  2. GLASSFISH-5218

ClassNotFoundException: com.sun.ejb.containers.TimerMigrationBean649625130_ConcreteImpl

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Critical Critical
    • Resolution: Fixed
    • Affects Version/s: v2.1
    • Fix Version/s: v2.1.1
    • Component/s: ejb_container
    • Labels:
      None
    • Environment:

      Operating System: All
      Platform: All

      Description

      Whenever I am deploying my EAR in GlassFishv2, I get the following stack trace
      in server.log. It seems GlassFish is not able to find one of its own classes!

      [#|2008-06-26T17:15:35.247+0200|WARNING|sun-appserver9.1|javax.enterprise.system.core|ThreadID=15;_ThreadName=httpWorkerThread-4848-1;C:/Sun/SDK/domains/domain1\generated\xml\j2ee-apps__ejb_container_timer_app;C:/Sun/SDK/domains/domain1/applications/j2ee-apps/_ejb_container_timer_app;_RequestID=898d02f9-1f05-4f90-a209-b090c3bd15df;|Failed
      to load deployment descriptor files from directory:
      C:/Sun/SDK/domains/domain1\generated\xml\j2ee-apps__ejb_container_timer_app.
      Load them from directory :
      C:/Sun/SDK/domains/domain1/applications/j2ee-apps/__ejb_container_timer_app
      instead.|#]

      [#|2008-06-26T17:15:35.466+0200|SEVERE|sun-appserver9.1|javax.enterprise.system.container.ejb|_ThreadID=15;_ThreadName=httpWorkerThread-4848-1;java.lang.ClassNotFoundException:
      com.sun.ejb.containers.TimerMigrationBean649625130_ConcreteImpl;_RequestID=898d02f9-1f05-4f90-a209-b090c3bd15df;|EJB5090:
      Exception in creating EJB container [java.lang.ClassNotFoundException:
      com.sun.ejb.containers.TimerMigrationBean649625130_ConcreteImpl]|#]

      [#|2008-06-26T17:15:35.466+0200|SEVERE|sun-appserver9.1|javax.enterprise.system.container.ejb|ThreadID=15;_ThreadName=httpWorkerThread-4848-1;_RequestID=898d02f9-1f05-4f90-a209-b090c3bd15df;|appId=_ejb_container_timer_app
      moduleName=ejb_jar ejbName=TimerMigrationBean|#]

      [#|2008-06-26T17:15:35.466+0200|SEVERE|sun-appserver9.1|javax.enterprise.system.core.classloading|_ThreadID=15;_ThreadName=httpWorkerThread-4848-1;_RequestID=898d02f9-1f05-4f90-a209-b090c3bd15df;|LDR5004:
      UnExpected error occured while creating ejb container
      java.lang.ClassNotFoundException:
      com.sun.ejb.containers.TimerMigrationBean649625130_ConcreteImpl
      at com.sun.enterprise.loader.EJBClassLoader.findClassData(EJBClassLoader.java:737)
      at com.sun.enterprise.loader.EJBClassLoader.findClass(EJBClassLoader.java:627)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
      at com.sun.ejb.containers.BaseContainer.<init>(BaseContainer.java:423)
      at com.sun.ejb.containers.EntityContainer.<init>(EntityContainer.java:246)
      at
      com.sun.ejb.containers.ContainerFactoryImpl.createContainer(ContainerFactoryImpl.java:628)
      at com.sun.enterprise.server.AbstractLoader.loadEjbs(AbstractLoader.java:536)
      at com.sun.enterprise.server.ApplicationLoader.doLoad(ApplicationLoader.java:188)
      at
      com.sun.enterprise.server.TomcatApplicationLoader.doLoad(TomcatApplicationLoader.java:126)
      at com.sun.enterprise.server.AbstractLoader.load(AbstractLoader.java:244)
      at
      com.sun.enterprise.server.AbstractManager.loadOneSystemApp(AbstractManager.java:393)
      at
      com.sun.enterprise.server.ondemand.SystemAppLoader.loadSystemApps(SystemAppLoader.java:124)
      at
      com.sun.enterprise.server.ondemand.EjbServiceGroup.loadSystemApps(EjbServiceGroup.java:183)
      at
      com.sun.enterprise.server.ondemand.EjbServiceGroup.start(EjbServiceGroup.java:141)
      at com.sun.enterprise.server.ondemand.ServiceGroup$1.run(ServiceGroup.java:193)
      at java.security.AccessController.doPrivileged(Native Method)
      at
      com.sun.enterprise.server.ondemand.ServiceGroup.startChildren(ServiceGroup.java:190)
      at
      com.sun.enterprise.server.ondemand.MainServiceGroup.start(MainServiceGroup.java:58)
      at
      com.sun.enterprise.server.ondemand.ServerEntryListenerImpl.notifyEntry(ServerEntryListenerImpl.java:85)
      at
      com.sun.enterprise.server.ondemand.entry.ServerEntryHelper.sendEvent(ServerEntryHelper.java:75)
      at
      com.sun.enterprise.server.ondemand.entry.ServerEntryHelper.generateAppLoaderEntryContext(ServerEntryHelper.java:60)
      at
      com.sun.enterprise.server.AbstractLoader.generateEntryContext(AbstractLoader.java:876)
      at com.sun.enterprise.server.AbstractLoader.notifyAppEvent(AbstractLoader.java:882)
      at com.sun.enterprise.server.ApplicationLoader.doLoad(ApplicationLoader.java:176)
      at
      com.sun.enterprise.server.TomcatApplicationLoader.doLoad(TomcatApplicationLoader.java:126)
      at com.sun.enterprise.server.AbstractLoader.load(AbstractLoader.java:244)
      at
      com.sun.enterprise.server.ApplicationManager.applicationDeployed(ApplicationManager.java:336)
      at
      com.sun.enterprise.server.ApplicationManager.applicationDeployed(ApplicationManager.java:210)
      at
      com.sun.enterprise.server.ApplicationManager.applicationDeployed(ApplicationManager.java:645)
      at
      com.sun.enterprise.admin.event.AdminEventMulticaster.invokeApplicationDeployEventListener(AdminEventMulticaster.java:928)
      at
      com.sun.enterprise.admin.event.AdminEventMulticaster.handleApplicationDeployEvent(AdminEventMulticaster.java:912)
      at
      com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:461)
      at
      com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:176)
      at
      com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:308)
      at
      com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:226)
      at
      com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:298)
      at
      com.sun.enterprise.deployment.phasing.ResourceAdapterStartPhase.runPhase(ResourceAdapterStartPhase.java:127)
      at
      com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
      at
      com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919)
      at
      com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:591)
      at
      com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:635)
      at
      com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:744)
      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)
      at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:375)
      at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:358)
      at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:464)
      at
      com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
      at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
      at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
      at
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:90)
      at $Proxy1.invoke(Unknown Source)
      at
      com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:304)
      at
      com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:174)
      at
      com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:69)
      at
      com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle(MBeanServerRequestHandler.java:155)
      at
      com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:122)
      at
      com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost(RemoteJmxConnectorServlet.java:193)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:738)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
      at
      org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:411)
      at
      org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:290)
      at
      org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:271)
      at
      org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:202)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
      at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:206)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
      at
      org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:150)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:632)
      at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:577)
      at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:571)
      at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1080)
      at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:272)
      at
      com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:637)
      at
      com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:568)
      at
      com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:813)
      at
      com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
      at
      com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
      at
      com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
      at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
      at
      com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl.run(WorkerThreadImpl.java:116)

      #]
      1. steff1193-2-server.log
        1.13 MB
        steff1193
      2. steff1193-server.log
        18 kB
        steff1193

        Activity

        Hide
        steff1193 added a comment -

        Hi

        Unfortunally I see the problem this jira issues is about.

        A little bit about my environment:
        Running Ubuntu 10.04 64-bit server. When I start Glassfish it logs the following in the log (which tells something about Glassfish and Java version):
        [#|2011-01-05T16:25:11.077+0100|INFO|sun-appserver2.1|javax.enterprise.system.core|_ThreadID=10;_ThreadName=main;|Starting Sun GlassFish Enterprise Server v2.1.1 ((v2.1 Patch06)(9.1_02 Patch12)) (build b31g-fcs) ...|#]
        [#|2011-01-05T16:25:12.580+0100|INFO|sun-appserver2.1|javax.enterprise.system.core|_ThreadID=10;_ThreadName=main;Java HotSpot(TM) 64-Bit Server VM;1.6.0_22;Sun Microsystems Inc.;|CORE5076: Using [Java HotSpot(TM) 64-Bit Server VM, Version 1.6.0_22] from [Sun Microsystems Inc.]|#]

        Glassfish is installed in /opt/glassfish, and I can create the problem by the following procedure:

        • cd /opt/glassfish/bin
        • ./asadmin stop-domain domain1 (just to make sure Glassfish is not running domain1)
        • rm -r ../domains/domain1 (delete the old domain1)
        • ./asadmin create-domain --adminport 4848 domain1 (creating a completely new and clean domain1)
        • ./asadmin start-domain domain1 (starting the new domain1)

        That gives me the server.log (including the java.lang.ClassNotFoundException: com.sun.ejb.containers.TimerBean_2100919770_ConcreteImpl) that I attach to this jira issue as steff1193-server.log

        Please help me find out why this is not working on my machine. I can tell that we have the same version of Glassfish running on Ubuntu 32-bit without problems. I am trying to setup a new Ubuntu 64-bit machine, and that is where I run into this problem. Dont know if it is 64-bit releated or if something else is wrong on my new machine.

        FYI, I cannot live without timer beans working, because my apps are using timer beans.

        Regards, Per Steffensen

        Show
        steff1193 added a comment - Hi Unfortunally I see the problem this jira issues is about. A little bit about my environment: Running Ubuntu 10.04 64-bit server. When I start Glassfish it logs the following in the log (which tells something about Glassfish and Java version): [#|2011-01-05T16:25:11.077+0100|INFO|sun-appserver2.1|javax.enterprise.system.core|_ThreadID=10;_ThreadName=main;|Starting Sun GlassFish Enterprise Server v2.1.1 ((v2.1 Patch06)(9.1_02 Patch12)) (build b31g-fcs) ...|#] [#|2011-01-05T16:25:12.580+0100|INFO|sun-appserver2.1|javax.enterprise.system.core|_ThreadID=10;_ThreadName=main;Java HotSpot(TM) 64-Bit Server VM;1.6.0_22;Sun Microsystems Inc.;|CORE5076: Using [Java HotSpot(TM) 64-Bit Server VM, Version 1.6.0_22] from [Sun Microsystems Inc.] |#] Glassfish is installed in /opt/glassfish, and I can create the problem by the following procedure: cd /opt/glassfish/bin ./asadmin stop-domain domain1 (just to make sure Glassfish is not running domain1) rm -r ../domains/domain1 (delete the old domain1) ./asadmin create-domain --adminport 4848 domain1 (creating a completely new and clean domain1) ./asadmin start-domain domain1 (starting the new domain1) That gives me the server.log (including the java.lang.ClassNotFoundException: com.sun.ejb.containers.TimerBean_2100919770_ConcreteImpl) that I attach to this jira issue as steff1193-server.log Please help me find out why this is not working on my machine. I can tell that we have the same version of Glassfish running on Ubuntu 32-bit without problems. I am trying to setup a new Ubuntu 64-bit machine, and that is where I run into this problem. Dont know if it is 64-bit releated or if something else is wrong on my new machine. FYI, I cannot live without timer beans working, because my apps are using timer beans. Regards, Per Steffensen
        Hide
        marina vatkina added a comment -

        Something is wrong with your generated directory. You can try to do the same with deployment & jdo loggers set to FINE

        Show
        marina vatkina added a comment - Something is wrong with your generated directory. You can try to do the same with deployment & jdo loggers set to FINE
        Hide
        steff1193 added a comment -

        Attached as steff1193-2-server.log the server.log created when starting a brand new domain1 with development- and jdo-logging set to FINE. Hope you can use that. Thanks!

        Regards, Per Steffensen

        Show
        steff1193 added a comment - Attached as steff1193-2-server.log the server.log created when starting a brand new domain1 with development- and jdo-logging set to FINE. Hope you can use that. Thanks! Regards, Per Steffensen
        Hide
        marina vatkina added a comment -

        Very strange... Everything seems fine. And I can't reproduce your error in my env.

        Can you check that TimerBean_2100919770_ConcreteImpl.class is there under domains/domain1/generated/ejb/j2ee-apps/__ejb_container_timer_app/com/sun/ejb/containers/ ?

        Does restarting GlassFish solves the problem?

        thanks,
        -marina

        Show
        marina vatkina added a comment - Very strange... Everything seems fine. And I can't reproduce your error in my env. Can you check that TimerBean_2100919770_ConcreteImpl.class is there under domains/domain1/generated/ejb/j2ee-apps/__ejb_container_timer_app/com/sun/ejb/containers/ ? Does restarting GlassFish solves the problem? thanks, -marina
        Hide
        steff1193 added a comment -

        Found the issue myself. I only had JRE installed and not JDK. JDK is needed to compile the generated classes. Some indications in the attached steff1193-2-server.log that indicates the problem:

        [#|2011-01-06T09:25:47.423+0100|FINE|sun-appserver2.1|javax.enterprise.system.tools.deployment|_ThreadID=10;_ThreadName=main;ClassName=com.sun.ejb.codegen.JavaCompiler;MethodName=internal_init;_RequestID=5739e9bf-6367-4f38-8a77-287e55b80ac7;|javacExe: null|#]

        javacExe: null shows that it didnt find javac, and therefore is not able to compile.

        Regards, Steff

        Show
        steff1193 added a comment - Found the issue myself. I only had JRE installed and not JDK. JDK is needed to compile the generated classes. Some indications in the attached steff1193-2-server.log that indicates the problem: [#|2011-01-06T09:25:47.423+0100|FINE|sun-appserver2.1|javax.enterprise.system.tools.deployment|_ThreadID=10;_ThreadName=main;ClassName=com.sun.ejb.codegen.JavaCompiler;MethodName=internal_init;_RequestID=5739e9bf-6367-4f38-8a77-287e55b80ac7;|javacExe: null|#] javacExe: null shows that it didnt find javac, and therefore is not able to compile. Regards, Steff

          People

          • Assignee:
            marina vatkina
            Reporter:
            mkarg
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: