2 Replies Latest reply on Aug 1, 2007 2:00 AM by vorsorge

    Hibernate config problem

    vorsorge

      Hi,

      we are using the jBPM-Starters-Kit. jBPM is configured to use an Oracle 9DB. Everything works fine using the JBoss-DataSource JbpmDS.

      All our ActionHandlers and depending classes come in their own war file. The classes already use a JNDI datasource-pool named vsab. They are calling PL/SQL stored procedures for read. Everything works fine.

      To start a jBPM-process we use our own WebService-Classes via XFire.

      We want to persist some of our objects in the db with Hibernate. In our war-file we put an hibernate.cfg.xml. The classes got their own hbm.xml.

      Our hibernate.cfg.xml looks like:

      <?xml version='1.0' encoding='utf-8'?>
      <!DOCTYPE hibernate-configuration PUBLIC
      "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
      "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

      <hibernate-configuration>

      <session-factory>

      <!-- Database connection settings -->
      org.hibernate.dialect.Oracle9Dialect
      java:/vsab




      </session-factory>

      </hibernate-configuration>

      But when I start a process when this hibernate.cfg.xml is present in our war-File we get the following:

      2:54:17,914 INFO [STDOUT] org.hibernate.MappingException: Unknown entity: org.jbpm.graph.exe.ProcessInstance
      at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:610)
      at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:66)
      at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:809)
      at org.hibernate.impl.SessionImpl.load(SessionImpl.java:731)
      at org.hibernate.impl.SessionImpl.load(SessionImpl.java:724)
      at org.jbpm.db.GraphSession.loadProcessInstance(GraphSession.java:276)
      at org.jbpm.JbpmContext.loadProcessInstance(JbpmContext.java:319)
      at jbpmServices.ServiceCallRuntime.createProcessInstance(ServiceCallRuntime.java:190)
      at jbpmServices.JbpmProcessService.readProcess(JbpmProcessService.java:97)
      at jbpmServices.JbpmService.readProcess(JbpmService.java:265)
      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:585)
      at org.codehaus.xfire.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:54)
      at org.codehaus.xfire.service.invoker.ObjectInvoker.invoke(ObjectInvoker.java:45)
      at org.codehaus.xfire.service.binding.ServiceInvocationHandler.sendMessage(ServiceInvocationHandler.java:271)
      at org.codehaus.xfire.service.binding.ServiceInvocationHandler$1.run(ServiceInvocationHandler.java:84)
      at org.codehaus.xfire.service.binding.ServiceInvocationHandler.execute(ServiceInvocationHandler.java:132)
      at org.codehaus.xfire.service.binding.ServiceInvocationHandler.invoke(ServiceInvocationHandler.java:107)
      at org.codehaus.xfire.handler.HandlerPipeline.invoke(HandlerPipeline.java:131)
      at org.codehaus.xfire.transport.DefaultEndpoint.onReceive(DefaultEndpoint.java:64)
      at org.codehaus.xfire.transport.AbstractChannel.receive(AbstractChannel.java:38)
      at org.codehaus.xfire.transport.http.XFireServletController.invoke(XFireServletController.java:301)
      at org.codehaus.xfire.transport.http.XFireServletController.doService(XFireServletController.java:130)
      at org.codehaus.xfire.transport.http.XFireServlet.doPost(XFireServlet.java:116)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)

      .....

      It seems es if the Hibernate-configs clash so that jBPM doesn't find it's own Hibernate config.

      How do I have to configure it? "It" standing for "jBPM" or for our own application or for something completely different? ;-)

      Thanks,
      Martin