1 Reply Latest reply on Aug 16, 2010 9:27 AM by Michael Wohlfart

    How to use seam 2.2 with jbpm 4.4?

    JBoss Crazzzzzzy Newbie

      I want migrate my old application with seam 2.2 and jbpm4.4. Current version is seam 2.0.1 and jbpm3.I am using http://www.lunatech-research.com/archives/2010/03/09/jbpm4-and-seam-working-together approach to migrate my application. While configuring my application with given option, i am getting following exeption.

       

      org.jboss.seam.InstantiationException: Could not instantiate Seam component: org.jboss.seam.bpm.jbpm <- newly created seam Component

          at org.jboss.seam.Component.newInstance(Component.java:2144)
          at org.jboss.seam.contexts.Contexts.startup(Contexts.java:304)
          at org.jboss.seam.contexts.Contexts.startup(Contexts.java:296)
          at org.jboss.seam.contexts.Contexts.startup(Contexts.java:278)
          at org.jboss.seam.contexts.ServletLifecycle.endInitialization(ServletLifecycle.java:116)
          at org.jboss.seam.init.Initialization.init(Initialization.java:740)
          at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:36)
          at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3830)
          at org.apache.catalina.core.StandardContext.start(StandardContext.java:4337)
          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:525)
          at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
          at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
          at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
          at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
          at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
          at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
          at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
          at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
          at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
          at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
          at org.apache.catalina.core.StandardService.start(StandardService.java:516)
          at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
          at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
          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:288)
          at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
      Caused by: java.lang.RuntimeException: exception invoking: init
          at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:154)
          at org.jboss.seam.Component.callComponentMethod(Component.java:2249)
          at org.jboss.seam.Component.callCreateMethod(Component.java:2172)
          at org.jboss.seam.Component.newInstance(Component.java:2132)
          ... 30 more
      Caused by: java.lang.reflect.InvocationTargetException
          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.jboss.seam.util.Reflections.invoke(Reflections.java:22)
          at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:144)
          ... 33 more
      Caused by: java.lang.ExceptionInInitializerError
          at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
          at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
          at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
          at java.lang.reflect.Constructor.newInstance(Unknown Source)
          at org.hibernate.engine.UnsavedValueFactory.instantiate(UnsavedValueFactory.java:22)
          at org.hibernate.engine.UnsavedValueFactory.getUnsavedIdentifierValue(UnsavedValueFactory.java:44)
          at org.hibernate.tuple.PropertyFactory.buildIdentifierProperty(PropertyFactory.java:44)
          at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:124)
          at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:434)
          at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:109)
          at org.hibernate.persister.PersisterFactory.createClassPersister(PersisterFactory.java:55)
          at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:226)
          at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1300)
          at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionFactoryDescriptor.construct(HibernateSessionFactoryDescriptor.java:62)
          at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:487)
          at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:466)
          at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:455)
          at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:429)
          at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:339)
          at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:704)
          at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:154)
          at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:711)
          at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:132)
          at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:123)
          at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionDescriptor.construct(HibernateSessionDescriptor.java:63)
          at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:487)
          at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:466)
          at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:455)
          at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:429)
          at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:339)
          at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:704)
          at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:132)
          at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:123)
          at org.jbpm.pvm.internal.env.EnvironmentImpl.getFromCurrent(EnvironmentImpl.java:207)
          at org.jbpm.pvm.internal.env.EnvironmentImpl.getFromCurrent(EnvironmentImpl.java:196)
          at org.jbpm.pvm.internal.cmd.CheckDbCmd.execute(CheckDbCmd.java:44)
          at org.jbpm.pvm.internal.svc.DefaultCommandService.execute(DefaultCommandService.java:42)
          at org.jbpm.pvm.internal.tx.StandardTransactionInterceptor.execute(StandardTransactionInterceptor.java:50)
          at org.jbpm.pvm.internal.svc.EnvironmentInterceptor.executeInNewEnvironment(EnvironmentInterceptor.java:53)
          at org.jbpm.pvm.internal.svc.EnvironmentInterceptor.execute(EnvironmentInterceptor.java:40)
          at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:56)
          at org.jbpm.pvm.internal.svc.SkipInterceptor.execute(SkipInterceptor.java:43)
          at org.jbpm.pvm.internal.processengine.ProcessEngineImpl.checkDb(ProcessEngineImpl.java:152)
          at org.jbpm.pvm.internal.processengine.ProcessEngineImpl.<init>(ProcessEngineImpl.java:105)
          at org.jbpm.pvm.internal.cfg.ConfigurationImpl.instantiateProcessEngine(ConfigurationImpl.java:100)
          at org.jbpm.pvm.internal.cfg.ConfigurationImpl.buildProcessEngine(ConfigurationImpl.java:92)
          at exienta.bpm.jbpm.Jbpm.init(Jbpm.java:42)
          ... 39 more
      Caused by: org.jbpm.JbpmException: couldn't parse jbpm configuration from resource 'jbpm.cfg.xml'
          at org.jbpm.JbpmConfiguration.getInstance(JbpmConfiguration.java:285)
          at org.jbpm.JbpmConfiguration.getInstance(JbpmConfiguration.java:257)
          at org.jbpm.JbpmConfiguration$Configs.getObjectFactory(JbpmConfiguration.java:418)
          at org.jbpm.JbpmConfiguration$Configs.getObject(JbpmConfiguration.java:430)
          at org.jbpm.JbpmConfiguration$Configs.getString(JbpmConfiguration.java:434)
          at org.jbpm.calendar.BusinessCalendar.getBusinessCalendarProperties(BusinessCalendar.java:49)
          at org.jbpm.calendar.BusinessCalendar.<init>(BusinessCalendar.java:56)
          at org.jbpm.job.Timer.<clinit>(Timer.java:21)
          ... 86 more
      Caused by: org.jbpm.JbpmException: no ObjectInfo class specified for element 'import'
          at org.jbpm.configuration.ObjectFactoryParser.parse(ObjectFactoryParser.java:139)
          at org.jbpm.configuration.ObjectFactoryParser.parseElements(ObjectFactoryParser.java:117)
          at org.jbpm.configuration.ObjectFactoryParser.parseElementsStream(ObjectFactoryParser.java:110)
          at org.jbpm.JbpmConfiguration.parseObjectFactory(JbpmConfiguration.java:317)
          at org.jbpm.JbpmConfiguration.getInstance(JbpmConfiguration.java:281)

       

      My jbpm.cfg.xml looks like below:

      <jbpm-configuration>
      <import resource="jbpm.default.cfg.xml"/>
      <import resource="jbpm.tx.hibernate.cfg.xml"/>
      <import resource="jbpm.jpdl.cfg.xml"/>
      <import resource="jbpm.bpmn.cfg.xml" />
      </jbpm-configuration>

       

      I am trying to resolve the issues but still unable to get the root cause of this exception. I guess internally Jbpm.class is getting called of seam's jbpm.jpdl jar is the problem.

       

      Any idea about this error or a way to migrate jbpm4 with seam 2.2 is highly appriciated.

       

      Thanks in advance