HI Bill,
Can you paste here the full stack trace?
I don't test it in SQL Server, but if the problem persist I'm interested in
solve it.
Some thoughts:
1) does JPA take the Hibernate Mappings as JPA entities without adding them
at the persistence.xml file?, I think yes, but I'm not sure
2) if not, probably we need to create a new persister for hibernate mapped
entities.
On Thu, Oct 15, 2009 at 9:26 PM, Bill Tarr <javatestcase(a)yahoo.com> wrote:
Has anyone successfully used JPAVariablePersister on Sql Server? The
quick
hits are we are running MSSQL 2008, and after introducing
JPAVariablePersister (which is described very well in
http://blog.athico.com/2009/09/drools-flow-variable-persistence.html)
every time I run my test case, the DB becomes non-responsive, returning from
any JDBC pings:
java.sql.SQLException: I/O Error: DB server closed connection.
You can't even connect through MSSQL Management Studios, looks like RPC
service has gone down. Haven't been able to do much troubleshooting yet
(slow going when you need to get a DBA to reboot your sever every time.)
I've already tested out the JPAKnowledgeService with some success. Setting
up my session with the following code, I can see the SessionInfo,
ProcessInstanceInfo, ProcessInstanceInfo_eventTypes tables storing data,
looks pretty solid, and I can grab the processes again.
EntityManagerFactory emf =
Persistence.createEntityManagerFactory("org.drools.persistence.jpa");
env = KnowledgeBaseFactory.newEnvironment();
env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, emf);
session =
JPAKnowledgeService.newStatefulKnowledgeSession(knowledgeBase, null, env);
Map<String, Object> parameterMap = new HashMap<String, Object>();
parameterMap.put("claim", claim);
processInstance = session.startProcess(CLAIMS_DEMO, parameterMap);
I want to store my variable separately though, as we already have them as
Hibernate DTOs. So I added the following code, as well as adding
JPAVariablePersister to my persistence.xml.
VariablePersistenceStrategyFactory.getVariablePersistenceStrategy()
.setPersister("javax.persistence.Entity",
"org.drools.persistence.processinstance.persisters.JPAVariablePersister");
The code appears to run through. This time, I can see data in the
SessionInfo, ProcessInstanceInfo, ProcessInstanceInfo_eventTypes tables, as
well as additional data in VariableInstanceInfo, and my two entities (Claim,
which has a List of Role.) The data looks pretty good, and my process logs
hit the expected nodes.
Anyway, I'll post more as I learn it. Let me know if anyone else is
running into this.
Thanks!
Bill
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users