2 Replies Latest reply on Jun 23, 2011 4:19 AM by mengzhiang

    jbpm tomcat JNDI binding problem

    mengzhiang

      I got a problem when I deploy jbpm to tomcat , please give me a help.

       

      [10:51:38] ERROR context.ContextLoader "Context initialization failed"

      org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngine' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public org.jbpm.api.ProcessEngine org.jbpm.pvm.internal.processengine.SpringHelper.createProcessEngine()] threw exception; nested exception is org.jbpm.api.JbpmException: JNDI binding problem

                at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:444)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:903)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:817)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)

                at java.security.AccessController.doPrivileged(Native Method)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)

                at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)

                at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)

                at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)

                at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)

                at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)

                at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)

                at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)

                at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)

                at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)

                at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)

                at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)

                at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)

                at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)

                at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)

                at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)

                at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)

                at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:637)

                at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:563)

                at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498)

                at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)

                at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)

                at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)

                at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)

                at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)

                at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)

                at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)

                at org.apache.catalina.core.StandardService.start(StandardService.java:519)

                at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)

                at org.apache.catalina.startup.Catalina.start(Catalina.java:581)

                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

                at java.lang.reflect.Method.invoke(Unknown Source)

                at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)

                at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

      Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public org.jbpm.api.ProcessEngine org.jbpm.pvm.internal.processengine.SpringHelper.createProcessEngine()] threw exception; nested exception is org.jbpm.api.JbpmException: JNDI binding problem

                at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:127)

                at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:435)

                ... 41 more

      Caused by: org.jbpm.api.JbpmException: JNDI binding problem

                at org.jbpm.pvm.internal.processengine.ProcessEngineImpl.initializeProcessEngine(ProcessEngineImpl.java:144)

                at org.jbpm.pvm.internal.processengine.SpringProcessEngine.create(SpringProcessEngine.java:62)

                at org.jbpm.pvm.internal.cfg.ConfigurationImpl.buildProcessEngine(ConfigurationImpl.java:90)

                at org.jbpm.pvm.internal.processengine.SpringHelper.createProcessEngine(SpringHelper.java:50)

                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

                at java.lang.reflect.Method.invoke(Unknown Source)

                at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:115)

                ... 42 more

      Caused by: javax.naming.NamingException: Context is read only

                at org.apache.naming.NamingContext.checkWritable(NamingContext.java:903)

                at org.apache.naming.NamingContext.bind(NamingContext.java:831)

                at org.apache.naming.NamingContext.bind(NamingContext.java:171)

                at org.apache.naming.NamingContext.bind(NamingContext.java:187)

                at org.apache.naming.SelectorContext.bind(SelectorContext.java:186)

                at javax.naming.InitialContext.bind(Unknown Source)

                at org.jbpm.pvm.internal.processengine.ProcessEngineImpl.initializeProcessEngine(ProcessEngineImpl.java:142)

                ... 50 more

      2011-6-23 10:51:38 org.apache.catalina.core.StandardContext listenerStart

      严重: Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener

      org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'processEngine' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public org.jbpm.api.ProcessEngine org.jbpm.pvm.internal.processengine.SpringHelper.createProcessEngine()] threw exception; nested exception is org.jbpm.api.JbpmException: JNDI binding problem

                at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:444)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:903)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:817)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)

                at java.security.AccessController.doPrivileged(Native Method)

                at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)

                at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)

                at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)

                at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)

                at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)

                at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)

                at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)

                at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)

                at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)

                at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)

                at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)

                at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)

                at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4135)

                at org.apache.catalina.core.StandardContext.start(StandardContext.java:4630)

                at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)

                at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)

                at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)

                at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:637)

                at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:563)

                at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498)

                at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)

                at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)

                at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)

                at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)

                at org.apache.catalina.core.StandardHost.start(StandardHost.java:785)

                at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)

                at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:445)

                at org.apache.catalina.core.StandardService.start(StandardService.java:519)

                at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)

                at org.apache.catalina.startup.Catalina.start(Catalina.java:581)

                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

                at java.lang.reflect.Method.invoke(Unknown Source)

                at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)

                at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

      Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public org.jbpm.api.ProcessEngine org.jbpm.pvm.internal.processengine.SpringHelper.createProcessEngine()] threw exception; nested exception is org.jbpm.api.JbpmException: JNDI binding problem

                at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:127)

                at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:435)

                ... 41 more

      Caused by: org.jbpm.api.JbpmException: JNDI binding problem

                at org.jbpm.pvm.internal.processengine.ProcessEngineImpl.initializeProcessEngine(ProcessEngineImpl.java:144)

                at org.jbpm.pvm.internal.processengine.SpringProcessEngine.create(SpringProcessEngine.java:62)

                at org.jbpm.pvm.internal.cfg.ConfigurationImpl.buildProcessEngine(ConfigurationImpl.java:90)

                at org.jbpm.pvm.internal.processengine.SpringHelper.createProcessEngine(SpringHelper.java:50)

                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

                at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

                at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

                at java.lang.reflect.Method.invoke(Unknown Source)

                at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:115)

                ... 42 more

      Caused by: javax.naming.NamingException: Context is read only

                at org.apache.naming.NamingContext.checkWritable(NamingContext.java:903)

                at org.apache.naming.NamingContext.bind(NamingContext.java:831)

                at org.apache.naming.NamingContext.bind(NamingContext.java:171)

                at org.apache.naming.NamingContext.bind(NamingContext.java:187)

                at org.apache.naming.SelectorContext.bind(SelectorContext.java:186)

                at javax.naming.InitialContext.bind(Unknown Source)

                at org.jbpm.pvm.internal.processengine.ProcessEngineImpl.initializeProcessEngine(ProcessEngineImpl.java:142)

                ... 50 more

        • 1. Re: jbpm tomcat JNDI binding problem
          mengzhiang

          i think  when jbpm init, it need write into JNDI ,but tomcat JNDI is read only , I want know what jbpm write into JNDI

           

          Caused by: javax.naming.NamingException: Context is read only

                    at org.apache.naming.NamingContext.checkWritable(NamingContext.java:903)

                    at org.apache.naming.NamingContext.bind(NamingContext.java:831)

                    at org.apache.naming.NamingContext.bind(NamingContext.java:171)

                    at org.apache.naming.NamingContext.bind(NamingContext.java:187)

                    at org.apache.naming.SelectorContext.bind(SelectorContext.java:186)

                    at javax.naming.InitialContext.bind(Unknown Source)

                    at org.jbpm.pvm.internal.processengine.ProcessEngineImpl.initializeProcessEngine(ProcessEngineImpl.java:142)

                    ... 50 more

          • 2. Re: jbpm tomcat JNDI binding problem
            mengzhiang

            I hava found the problem, my jpbm.cfg.xml is Incorrect.

             

            <?xml version="1.0" encoding="UTF-8"?>
            
            
            <jbpm-configuration jndi-name="java:/ProcessEngine">
            
            
              <import resource="jbpm.default.cfg.xml" />
              <import resource="jbpm.businesscalendar.cfg.xml" />
              <import resource="jbpm.tx.jta.cfg.xml" />
              <import resource="jbpm.jpdl.cfg.xml" />
              <import resource="jbpm.bpmn.cfg.xml" />
              <import resource="jbpm.identity.cfg.xml" />
              <import resource="jbpm.jobexecutor.cfg.xml" />
              <import resource="jbpm.console.cfg.xml" />
            
            
            </jbpm-configuration>
            
            

            Integrated spring should use


            <?xml version="1.0" encoding="UTF-8"?>
            
            
            <jbpm-configuration>
            
            
              <import resource="jbpm.default.cfg.xml" />
              <import resource="jbpm.tx.spring.cfg.xml" />
              <import resource="jbpm.jpdl.cfg.xml" />
              <import resource="jbpm.bpmn.cfg.xml" />
              <import resource="jbpm.identity.cfg.xml" />
              <import resource="jbpm.businesscalendar.cfg.xml" />
              <import resource="jbpm.console.cfg.xml" />
              <import resource="jbpm.jobexecutor.cfg.xml" />
              
              <process-engine-context>
                <string name="spring.cfg" value="applicationContext.xml" />
              </process-engine-context>
            
            
            </jbpm-configuration>
            
            

             

            Thank you