[jboss-user] [jBPM Users] - [JBPM 4.1] could not initialize proxy - no Session
Alkero
do-not-reply at jboss.com
Mon Oct 26 12:30:12 EDT 2009
I have a "could not initialize proxy" exception in a workflow when I try to get the process definition id from tasks which are between a fork and a join. The problem doesn't occur if I have not a split/join implementation.
Process Definition:
<?xml version="1.0" encoding="UTF-8"?>
|
| <process key="id" name="id" xmlns="http://jbpm.org/4.0/jpdl">
| <start g="123,34,32,29" name="start1">
| <transition to="fork2"/>
| </start>
| <end g="137,339,120,108" name="end1"/>
| <join g="-52,68,42,30" name="join1"/>
| <fork g="126,108,46,26" name="fork2">
| <transition to="task1"/>
| <transition to="task2"/>
| </fork>
| <task assignee="test" g="70,189,71,53" name="task1">
| <transition to="join2"/>
| </task>
| <task assignee="test" g="167,189,83,49" name="task2">
| <transition to="join2"/>
| </task>
| <join g="136,262,58,45" name="join2">
| <transition to="end1"/>
| </join>
| </process>
Test case:
package org.jbpm.examples.processdefinition.id;
|
| import java.util.List;
| import org.jbpm.api.Execution;
| import org.jbpm.api.ProcessInstance;
| import org.jbpm.api.task.Task;
| import org.jbpm.test.JbpmTestCase;
|
| /**
| * @author David Loiseau
| */
|
| public class ProcessDefinitionIdTest extends JbpmTestCase {
|
|
| String deploymentId;
|
| protected void setUp() throws Exception {
| super.setUp();
|
| deploymentId = repositoryService.createDeployment()
| .addResourceFromClasspath("org/jbpm/examples/processdefinition/id/process.jpdl.xml")
| .deploy();
| }
|
| public void testFindProcessDefinitionIdFromExecution(){
| String actorName = "test";
| ProcessInstance processInstance = executionService.startProcessInstanceByKey("id");
| List<Task> tasks = taskService.findPersonalTasks(actorName);
| for(Task task : tasks){
| Execution execution = processEngine.getExecutionService().findExecutionById(task.getExecutionId());
| String processDefinitionId = execution.getProcessInstance().getProcessDefinitionId();
| assertNotNull(processDefinitionId);
| }
| }
|
| protected void tearDown() throws Exception {
| repositoryService.deleteDeploymentCascade(deploymentId);
|
| super.tearDown();
| }
|
|
| }
|
Exception:
### EXCEPTION ###########################################
| 17:26:39,203 SEV | [BaseJbpmTestCase] TEST THROWS EXCEPTION: could not initialize proxy - no Session
| org.hibernate.LazyInitializationException: could not initialize proxy - no Session
| at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:86)
| at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:140)
| at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:190)
| at org.jbpm.pvm.internal.model.ExecutionImpl_$$_javassist_4.getProcessDefinitionId(ExecutionImpl_$$_javassist_4.java)
| at org.jbpm.examples.processdefinition.id.ProcessDefinitionIdTest.testFindProcessDefinitionIdFromExecution(ProcessDefinitionIdTest.java:32)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
| at java.lang.reflect.Method.invoke(Unknown Source)
| at junit.framework.TestCase.runTest(TestCase.java:164)
| at org.jbpm.test.BaseJbpmTestCase.runTest(BaseJbpmTestCase.java:80)
| at junit.framework.TestCase.runBare(TestCase.java:130)
| at junit.framework.TestResult$1.protect(TestResult.java:106)
| at junit.framework.TestResult.runProtected(TestResult.java:124)
| at junit.framework.TestResult.run(TestResult.java:109)
| at junit.framework.TestCase.run(TestCase.java:120)
| at junit.framework.TestSuite.runTest(TestSuite.java:230)
| at junit.framework.TestSuite.run(TestSuite.java:225)
| at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
| at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
| at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
| at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
| at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
| at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
| at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
| ### EXCEPTION ###########################################anonymous wrote :
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4262224#4262224
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4262224
More information about the jboss-user
mailing list