[rules-users] Problem in getting session from JPAKnowledgeService.newStatefulKnowledgeSession();

Bennet Joseph josedrools at gmail.com
Thu Nov 25 01:57:57 EST 2010


Hi All,

follwoing is the code i used to get the session using
JPAKnowledgeService.newStatefulKnowledgeSession.

table for the mentioned classes are getting created, after that
JPAKnowledgeService.newStatefulKnowledgeSession() method throws following
exception....

            EntityManagerFactory emf =
Persistence.createEntityManagerFactory( "org.drools.persistence.jpa" );

            Environment env = KnowledgeBaseFactory.newEnvironment();

            env.set( EnvironmentName.ENTITY_MANAGER_FACTORY, emf );
            env.set( EnvironmentName.TRANSACTION_MANAGER,
TransactionManagerServices.getTransactionManager() );

            StatefulKnowledgeSession ksession =
JPAKnowledgeService.newStatefulKnowledgeSession( kbase, null, env );

-------------------------
persistence.xml

i copied only persistent unit part...

    <persistence-unit name="org.drools.persistence.jpa">

    <class>org.drools.persistence.session.SessionInfo</class>

<class>org.drools.persistence.processinstance.ProcessInstanceInfo</class>

<class>org.drools.persistence.processinstance.ProcessInstanceEventInfo</class>
    <class>org.drools.persistence.processinstance.WorkItemInfo</class>

<class>org.drools.persistence.processinstance.variabletypes.VariableInstanceInfo</class>

<class>org.drools.persistence.processinstance.variabletypes.JPAPersistedVariable</class>


        <properties>
            <property name="hibernate.dialect"
value="org.hibernate.dialect.Oracle10gDialect" />
            <property name="hibernate.max_fetch_depth" value="3" />
            <property name="hibernate.hbm2ddl.auto" value="update" />
            <property name="hibernate.show_sql" value="true" />
              <property name="hibernate.transaction.manager_lookup_class"

value="org.hibernate.transaction.BTMTransactionManagerLookup" />
            <property name="hibernate.connection.url"
value="jdbc:oracle:thin:@192.168.4.93:1521:POST" />
            <property name="hibernate.connection.driver_class"
value="oracle.jdbc.driver.OracleDriver" />
            <property name="hibernate.connection.password" value="voms_test"
/>
            <property name="hibernate.connection.username" value="voms_test"
/>
            <property name="java.naming.factory.initial"
value="bitronix.tm.jndi.BitronixInitialContextFactory"/>
            <!--
                <property name="hibernate.format_sql" value="true"/>
            -->
        </properties>

    </persistence-unit>

but it throws exception

java.lang.IllegalStateException: java.lang.reflect.InvocationTargetException
    at
org.drools.persistence.jpa.impl.KnowledgeStoreServiceImpl.buildCommanService(KnowledgeStoreServiceImpl.java:137)
    at
org.drools.persistence.jpa.impl.KnowledgeStoreServiceImpl.newStatefulKnowledgeSession(KnowledgeStoreServiceImpl.java:61)
 *   at
org.drools.persistence.jpa.JPAKnowledgeService.newStatefulKnowledgeSession(JPAKnowledgeService.java:109)
    at com.sample.FirstTest.main(FirstTest.java:87)*
Caused by: java.lang.reflect.InvocationTargetException
    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.drools.persistence.jpa.impl.KnowledgeStoreServiceImpl.buildCommanService(KnowledgeStoreServiceImpl.java:123)
    ... 3 more
Caused by: java.lang.RuntimeException: Could not commit session or rollback
    at
org.drools.persistence.session.SingleSessionCommandService.<init>(SingleSessionCommandService.java:132)
    ... 8 more
Caused by: java.lang.RuntimeException: Unable to rollback transaction
    at
org.drools.persistence.session.JtaTransactionManager.rollback(JtaTransactionManager.java:181)
    at
org.drools.persistence.session.SingleSessionCommandService.<init>(SingleSessionCommandService.java:130)
    ... 8 more
Caused by: java.lang.NullPointerException
    at
org.drools.persistence.session.JtaTransactionManager.rollback(JtaTransactionManager.java:178)
    ... 9 more
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20101125/090a35f7/attachment.html 


More information about the rules-users mailing list