[rules-users] The Field rulesByteArray in Table SessionInfo Always Empty
Rui Tang
tangrui.cn at gmail.com
Thu Nov 4 13:41:15 EDT 2010
Hi list,
I have a very simple webapp demo based on drools-persistence-jpa.
I can obtain a StatefulKnowledgeSession from this statement:
ksession = JPAKnowledgeService.newStatefulKnowledgeSession(this.kbase,
null, env);
and the SessionInfo will be stored into database correctly, except that the
rulesByteArray field is always empty.
Then I use the following statement to retrieve this ksession, but NPE
occurred.
ksession = JPAKnowledgeService.loadStatefulKnowledgeSession(
command.getSessionId(), this.kbase, null, env);
I've read the code (JPASessionMarshallingHelper.loadSnapshot()) and find
that this should be caused by the empty rulesByteArray filed.
I'm wondering in which case this field is empty, and how to make it work
correct.
Below is the stacktrace:
Caused by: java.lang.IllegalStateException:
java.lang.reflect.InvocationTargetException
at
org.drools.persistence.jpa.impl.KnowledgeStoreServiceImpl.buildCommanService(KnowledgeStoreServiceImpl.java:110)
at
org.drools.persistence.jpa.impl.KnowledgeStoreServiceImpl.loadStatefulKnowledgeSession(KnowledgeStoreServiceImpl.java:78)
at
org.drools.persistence.jpa.JPAKnowledgeService.loadStatefulKnowledgeSession(JPAKnowledgeService.java:118)
at
com.zyeeda.framework.knowledge.internal.DroolsKnowledgeServiceProvider.execute(DroolsKnowledgeServiceProvider.java:165)
at
$KnowledgeService_12c173f2df7.execute($KnowledgeService_12c173f2df7.java)
at
com.zyeeda.framework.resources.SampleFlowResource.start(SampleFlowResource.java:36)
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
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:173)
at
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:89)
... 49 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at
org.drools.persistence.jpa.impl.KnowledgeStoreServiceImpl.buildCommanService(KnowledgeStoreServiceImpl.java:95)
... 60 more
Caused by: java.lang.NullPointerException
at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:89)
at
org.drools.persistence.session.JPASessionMarshallingHelper.loadSnapshot(JPASessionMarshallingHelper.java:85)
at
org.drools.persistence.session.SingleSessionCommandService.initKsession(SingleSessionCommandService.java:196)
at
org.drools.persistence.session.SingleSessionCommandService.<init>(SingleSessionCommandService.java:159)
Thank you very much!
--
唐睿
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/rules-users/attachments/20101105/fd1795ed/attachment.html
More information about the rules-users
mailing list