patil deepali schrieb: > Hi Thomas, > > I think *AND* condition doesn't work correctly. I have a work flow which > needs to use AND condition, > > <node name="Processing"> > <description>Processing</description> > <edge to="WriteExil" event="none" /> > <edge to="WritePdfInfo" event="none" /> > </node> > <node name="WriteExil"> > <description>Write Exil</description> > <scriptaction name="WriteExilTaskSetProgram"> > <description>Setting the required variables</description> > <script> > > $wf.getDatabit("exegenixdataset.Program").setValue("/home/taka/deepali/ShellScripts/swampWriteExil.sh") > </script> > </scriptaction> > <scriptaction name="WriteExilTaskSetArguments"> > <description>Setting the required variables</description> > <script> > $wf.getDatabit("exegenixdataset.arguments").setValue("FilePath*FileName") > </script> > </scriptaction> > <customtask name="WriteExilTask" eventtype="adone" > class="com.exegenix.ExegenixAction" > function="callScript"> > <description>Writing Exil</description> > </customtask> > <manualtask name="WriteExilMan" eventtype="WriteExil_OK"> > <description>WriteExil</description> > </manualtask> > <edge to="unite_path4" event="WriteExil_OK" /> > </node> > > <node name="WritePdfInfo"> > <description>Write PdfInfo</description> > <scriptaction name="WritePdfInfoSetProgram"> > <description>Setting the required variables</description> > <script> > > $wf.getDatabit("exegenixdataset.Program").setValue("/home/taka/deepali/ShellScripts/swampWritePdfInfo.sh") > </script> > </scriptaction> > <scriptaction name="WritePdfInfoTaskSetArguments"> > <description>Setting the required variables</description> > <script> > $wf.getDatabit("exegenixdataset.arguments").setValue("FilePath*FileName") > </script> > </scriptaction> > <customtask name="WritePdfInfoTask" eventtype="bdone" > class="com.exegenix.ExegenixAction" function="callScript"> > <description>WritePdfInfoTask</description> > </customtask> > <manualtask name="WritePdfInfoMan" eventtype="WritePdfInfo_OK"> > <description>WritePdfInfo</description> > </manualtask> > <edge to="unite_path4" event="WritePdfInfo_OK" /> > </node> > <node name="unite_path4"> > <description>Unite Path4</description> > <edge to="Processing"> > <and> > <event type="WriteExil_OK"/> > <event type="WritePdfInfo_OK"/> > </and> > </edge> > </node> > > but I can see that though both the events WriteExil_OK and WritePdfInfo_OK > are met workflow doesn't move to Processing Stage. Its stuck at the > unite_path4 node. > > BTW, I am signalling both these events from outside once the task is > finished > > WriteExil task takes a longer time than WritePdfInfo task. > This is the log snippet, you might be interested in.. > 15.08 16:56:05 [DEBUG] SOAPSWAMP: doSendEvent(): 440, WriteExil_OK > 15.08 16:56:05 [DEBUG] SOAPSWAMP: authenticating user: swamp_user > 15.08 16:56:05 [DEBUG] Updated User swamp_user > 15.08 16:56:05 [DEBUG] Wf-440: Handling event WriteExil_OK > 15.08 16:56:05 [DEBUG] Leaving node: WriteExil > 15.08 16:56:05 [DEBUG] getTasksForWorkflowNode found 1 WorkflowTasks. > 15.08 16:56:05 [DEBUG] Storing Task: #5277 (action: manualtask > #WriteExilMan) > 15.08 16:56:05 [DEBUG] Entering node: unite_path4 > 15.08 16:56:05 [DEBUG] Tried to activate an already active node, skipping. > 15.08 16:56:05 [DEBUG] Wf-440:Finished Handling event WriteExil_OK > 15.08 16:56:05 [DEBUG] Updated Node with id: 5489 > 15.08 16:56:05 [DEBUG] Updated EventCondition #7143 > 15.08 16:56:05 [DEBUG] Updated EventCondition #7144 > > Can you tell us what may be wrong or better way to do it. We tried to > simulate JBossjBPM's task node with combination of manual task and custom > task. > > Any suggestion in this regard is highly appreciated! > > Thanks and regards, > Deepali
Hi Deepali, the problem is here: unite_path4 gets activated either after the first event WritePdfInfo_OK or WriteExil_OK. But this event does not get send to the edges of the node unite_path4, because at the moment these events are sent the node and its outgoing edges are not activated yet and thus do not listen for events. You have to construct thw workflow this way that the node unite_path4 is already activated and waiting for the events when you send them. Greetings -- Thomas Schmidt (tschmidt [at] suse.de) SUSE Linux Products GmbH :: Research & Development :: Internal Tools "Computers are useless. They can only give you answers.", Pablo Picasso ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ swamp-devel mailing list swamp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/swamp-devel http://swamp.sf.net