AnsweredAssumed Answered

Failed to signal transition 'accept' from workflow task 'jbp

Question asked by rupanjal on Dec 24, 2009
Hi all,
i am using Alfresco 3.0 and using JBoss jBPM Process Designer 3.2.2.The code for the workflow in processdefination.xml is

<?xml version="1.0" encoding="UTF-8"?>

<process-definition  xmlns="urn:jbpm.org:jpdl-3.2"  name="Claims_workflow">


   <swimlane name="Customer">
      <assignment actor-id="User1"></assignment>
   </swimlane>

   <swimlane name="Claim_officer">
      <assignment actor-id="User2"></assignment>
   </swimlane>


   <start-state name="start_workflow">
      <task name="start" swimlane="Customer"></task>
      <transition to="Officer" name="submit"></transition>
   </start-state>


   <task-node name="Officer">
      <task name="review" swimlane="Claim_officer"></task>
      <event type="transition"></event>
      <transition to="accepted" name="accept">
         <action class="org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript"></action>
         <script name="accepted_doc">
            var dest = companyhome.childByNamePath(&quot;Accepted_Claim_doc&quot;);

for (var i = 0; i &lt; bpm_package.children.length; i++)
{
bpm_package.children[i].move(dest);
}
         </script>
      </transition>
      <transition to="rejected" name="reject"></transition>
   </task-node>

   <node name="accepted">
      <action class=""></action>
      <transition to="end_workflow"></transition>
   </node>

   <node name="rejected">
      <transition to="end_workflow"></transition>
   </node>


   <end-state name="end_workflow"></end-state>


</process-definition>

Then i have deployed the workflow to Alfresco.In the workflow there is a user who initiates the workflow,it then goes to a officer.Now if he accepts the request then the file should move to a folder /companyhome/accepted_doc.but if he rejects the document it stays back in the same folder.The flow works fine when the officer rejects it but when he accepts it,a error is thrown "A system error happened during the operation: Failed to signal transition 'accept' from workflow task 'jbpm$14024711' ".The code for moving the folder is

var dest = companyhome.childByNamePath("Accepted_Claim_doc");

for (var i = 0; i < bpm_package.children.length; i++)
{
bpm_package.children[i].move(dest);
}

The error log is

19:18:07,436 ERROR [org.alfresco.web.ui.common.Utils] A system error happened during the operation: Failed to signal transition ' accept document' from workflow task 'jbpm$11468801'
org.alfresco.service.cmr.workflow.WorkflowException: Failed to signal transition ' accept document' from workflow task 'jbpm$11468801'
   at org.alfresco.repo.workflow.jbpm.JBPMEngine.endTask(JBPMEngine.java:1717)
   at org.alfresco.repo.workflow.WorkflowServiceImpl.endTask(WorkflowServiceImpl.java:544)
   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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:296)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:177)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
   at org.alfresco.repo.security.permissions.impl.AlwaysProceedMethodInterceptor.invoke(AlwaysProceedMethodInterceptor.java:40)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
   at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
   at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:275)
   at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
   at $Proxy51.endTask(Unknown Source)
   at org.alfresco.web.bean.workflow.ManageTaskDialog.transition(ManageTaskDialog.java:390)
   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.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)
   at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:61)
   at javax.faces.component.UICommand.broadcast(UICommand.java:109)
   at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:97)
   at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:171)
   at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
   at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:95)
   at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:70)
   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:139)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.alfresco.web.app.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:81)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
   at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
   at java.lang.Thread.run(Thread.java:619)
Caused by: org.jbpm.graph.def.DelegationException: Script has not been provided
   at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:387)
   at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:378)
   at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:281)
   at org.jbpm.graph.def.GraphElement.executeActions(GraphElement.java:220)
   at org.jbpm.graph.def.GraphElement.fireAndPropagateEvent(GraphElement.java:190)
   at org.jbpm.graph.def.GraphElement.fireEvent(GraphElement.java:174)
   at org.jbpm.graph.def.Transition.take(Transition.java:138)
   at org.jbpm.graph.def.Node.leave(Node.java:394)
   at org.jbpm.graph.node.TaskNode.leave(TaskNode.java:209)
   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.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
   at org.jbpm.graph.node.TaskNode$$EnhancerByCGLIB$$42bacf36.leave(<generated>)
   at org.jbpm.graph.exe.Token.signal(Token.java:195)
   at org.jbpm.graph.exe.Token.signal(Token.java:166)
   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.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157)
   at org.jbpm.graph.exe.Token$$EnhancerByCGLIB$$b5037f80.signal(<generated>)
   at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:488)
   at org.alfresco.repo.workflow.jbpm.WorkflowTaskInstance.end(WorkflowTaskInstance.java:133)
   at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:427)
   at org.alfresco.repo.workflow.jbpm.JBPMEngine$26.doInJbpm(JBPMEngine.java:1702)
   at org.springmodules.workflow.jbpm31.JbpmTemplate$1.doInHibernate(JbpmTemplate.java:87)
   at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:372)
   at org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:338)
   at org.springmodules.workflow.jbpm31.JbpmTemplate.execute(JbpmTemplate.java:80)
   at org.alfresco.repo.workflow.jbpm.JBPMEngine.endTask(JBPMEngine.java:1670)
   … 48 more
Caused by: org.alfresco.service.cmr.workflow.WorkflowException: Script has not been provided
   at org.alfresco.repo.workflow.jbpm.AlfrescoJavaScript.execute(AlfrescoJavaScript.java:93)
   at org.jbpm.graph.def.Action.execute(Action.java:122)
   at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:264)
   … 77 more
Can someone please help me out to solve this issue?
Thanks……………..

Outcomes