byungwoojun [
http://community.jboss.org/people/byungwoojun] created the discussion
"Re: Does the ksession.dispose() work safely?"
To view the discussion, visit:
http://community.jboss.org/message/609943#609943
--------------------------------------------------------------
Since we don't change environment per knowledge session, we cache the environment and
use it when we create a new stateful knowledge session. It is questionable if we need to
create environment per knowledge session (e.g., Environment env =
KnowledgeBaseFactory.newEnvironment();)
We chose to cache the environment, and we experienced the problems that was described in
my previous section. As a resolution, my team set an additional environment property by
using putting the emf.createEntityManager() into EnvironmentName.APP_SCOPED_ENTITY_MANAGER
as follows:
private static Environment env = null;
...
env = KnowledgeBaseFactory.newEnvironment();
...
env.set(EnvironmentName.ENTITY_MANAGER_FACTORY, emf);
...
*env.set(EnvironmentName.APP_SCOPED_ENTITY_MANAGER,*
* emf.createEntityManager());*
...
StatefulKnowledgeSession ksession = JPAKnowledgeService.newStatefulKnowledgeSession(kbase,
null, *env*);
...
After the above setting, the ksession.dispose() no longer created a problem. Here is my
question, what is the best practice on the enviroment creation? Should we cache it or
should we create it per knowledge session?
thanks,
bwj
--------------------------------------------------------------
Reply to this message by going to Community
[
http://community.jboss.org/message/609943#609943]
Start a new discussion in jBPM at Community
[
http://community.jboss.org/choose-container!input.jspa?contentType=1&...]