add two method :
public ProcessDefinition loadProcessDefinition(final long id){
return (ProcessDefinition) execute(new JbpmCallback() {
public Object doInJbpm(JbpmContext context) {
return context.getGraphSession().loadProcessDefinition(id );
}
});
}
public void saveTaskInstance(final TaskInstance taskinstance){
execute(new JbpmCallback() {
public Object doInJbpm(JbpmContext context) {
context.save(taskinstance);
return null;
}
});
}
************************************************** *******
test case:
public void testStartProcessInstance() {
ProcessDefinition processDefinition = m_template.loadProcessDefinition(1);
ProcessInstance instance = processDefinition.createProcessInstance();
}
*********************************************
error
@APPNAME@] ERROR [main] LazyInitializationException.<init>(19) | could not initialize proxy - the owning Session was closed
org.hibernate.LazyInitializationException: could not initialize proxy - the owning Session was closed
at org.hibernate.proxy.AbstractLazyInitializer.initia lize(AbstractLazyInitializer.java:56)
at org.hibernate.proxy.AbstractLazyInitializer.getImp lementation(AbstractLazyInitializer.java:98)
at org.hibernate.proxy.CGLIBLazyInitializer.intercept (CGLIBLazyInitializer.java:158)
at org.jbpm.graph.def.ProcessDefinition$$EnhancerByCG LIB$$4c3f3edf.createProcessInstance(<generated>)
at com.kingsoft.workflow.test.SpringTestDb.testStartP rocessInstance(SpringTestDb.java:45)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Nativ e Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Native MethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at junit.framework.TestCase.runTest(TestCase.java:154 )
at junit.framework.TestCase.runBare(TestCase.java:127 )
at junit.framework.TestResult$1.protect(TestResult.ja va:106)
at junit.framework.TestResult.runProtected(TestResult .java:124)
at junit.framework.TestResult.run(TestResult.java:109 )
at junit.framework.TestCase.run(TestCase.java:118)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.runTests(RemoteTestRunner.java:478)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.run(RemoteTestRunner.java:344)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRu nner.main(RemoteTestRunner.java:196)


