<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments for PlugTree</title>
	<atom:link href="http://www.plugtree.com/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.plugtree.com</link>
	<description></description>
	<lastBuildDate>Fri, 20 Apr 2012 16:21:31 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>Comment on Event Driven Business Process Management in jBPM5 by Lillian A</title>
		<link>http://www.plugtree.com/event-driven-business-process-management-in-jbpm5/comment-page-1/#comment-18881</link>
		<dc:creator>Lillian A</dc:creator>
		<pubDate>Fri, 20 Apr 2012 16:21:31 +0000</pubDate>
		<guid isPermaLink="false">http://www.plugtree.com/?p=26492#comment-18881</guid>
		<description>Excellent article!

I created my own listener and logged the run of one of my working processes.  I was shocked by the output.  It appears that the listener runs on the SAME thread (as seen in the log) and yet the logging is out of order,  even  the &quot;afterProcessCompleted&quot; event.  Am I doing something wrong?
I use jBPM5.2 with Drools 5.3 on Jboss App Server 7.1 final.

Thank you for any insight you can offer.

&lt;code&gt;
Line 278: 11:53:01,726 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeProcessStarted
	Line 280: 11:53:01,742 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 281: 11:53:01,742 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 282: 11:53:01,757 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 291: 11:53:01,757 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 292: 11:53:01,757 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 295: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 296: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 297: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 298: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 299: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 300: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 301: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 302: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 303: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 304: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterProcessStarted
	Line 306: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 307: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 312: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 313: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 3976: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 3977: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 3978: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 3979: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 4079: 11:53:10,946 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 4080: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered
	Line 4081: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft
	Line 4082: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeProcessCompleted
	Line 4083: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterProcessCompleted
	Line 4084: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 4085: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 4086: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 4087: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 4088: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 4089: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 4090: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 4091: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 4092: 11:53:10,977 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
	Line 4093: 11:53:10,977 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered
	Line 4094: 11:53:10,977 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft
&lt;/code&gt;

The BPMN is as follows.
&lt;code&gt;
 


  
  
  
  
  
  
  
  
  

  

    
     
     
     
     
     
     
     
     
    
    &lt;!-- process variables --&gt;
    
    
    
    
    
    
    
    
    

    &lt;!-- nodes --&gt;
    
        
    
    
    
    
    
      try
{
MonitorUtil.monitor(kcontext) ;

// prepare the feed for the decision table
AnIMSFile projectFile  =null ; 

try {
         projectFile =  imsFileNoun.find(projectName) ;
} catch (Exception e) { System.out.println (&quot;noun!!!!!!!!!!!&quot;) ; e.printStackTrace(); }

Boolean foundIt = (projectFile != null) ;

//global String projectUID
projectUID = &quot;&quot; ;
if (foundIt) {  projectUID= projectFile.getFileUID(); }

kcontext.setVariable (&quot;projectUID&quot;,projectUID);
kcontext.setVariable (&quot;found&quot;, foundIt) ;

//System.out.println (projectName + projectUID  + &quot;     &quot; + foundIt) ;
//System.out.println (&quot;------------------------------------------------------FOUND-----------------    &quot; + foundIt) ;

 }catch (Exception e)  { e.printStackTrace(); }
    
    
      
        
        
        
        
        
        
        
        
          _20_userNameInput
          _20_projectNameInput
          _20_DueDateInput
          _20_ListNameInput
          _20_AssignedToInput
          _20_TitleInput
        
        
          _20_serviceResultsOutput
        
      
      
        userName
        _20_userNameInput
      
      
        projectName
        _20_projectNameInput
      
      
        _20_DueDateInput
        
          TODO
          _20_DueDateInput
        
      
      
        _20_ListNameInput
        
          Tasks for IBE Developers
          _20_ListNameInput
        
      
      
        _20_AssignedToInput
        
          Lillian Andres
          _20_AssignedToInput
        
      
      
        _20_TitleInput
        
          check project - may need to add to the database
          _20_TitleInput
        
      
      
        _20_serviceResultsOutput
        serviceResults
      
    
    
        
    
    
      try
{
//System.out.println(&quot;Gather Work Packages from Active Detail Tasks&quot;);

MonitorUtil.monitor(kcontext) ;

filteredOutputTasks.getWorkPkgsFromActiveTasks();	// sets workPkds

//System.out.println(&quot;DONE Gather Work Packages from Active Detail Tasks&quot;);
 } catch (Exception e)  { e.printStackTrace(); }
    
    
      try
{
MonitorUtil.monitor(kcontext) ;

String forLog = filteredOutputTasks.myScriptDisplayTask(rangeInDays, statusDate, &quot;\n&quot;);

System.out.println(&quot;=======================================&quot;);
System.out.println (forLog) ;
System.out.println(&quot;=======================================&quot;);
    	
MonitorUtil.stopMonitorProcess(kcontext) ;
} catch (Exception e)  { e.printStackTrace(); }
    
    
      
System.out.println(&quot;user name is &quot; + userName ) ;
System.out.println(&quot;statusDate is &quot; + statusDate) ;
System.out.println(&quot;range in days &quot; + rangeInDays) ;
System.out.println(&quot;project name  is &quot; + projectName) ;

MonitorUtil.monitor(kcontext) ;


	
      
    
    
      try
{
MonitorUtil.monitor(kcontext) ;


//System.out.println (projectName + &quot; = &quot; + projectUID) ;
//System.out.println (&quot;filteredOutputTasks = &quot; + filteredOutputTasks) ;
try {	
       filteredOutputTasks.fillRulePassedTasks (projectUID) ;
       } catch (Exception e) { e.printStackTrace(); }
       
filteredOutputTasks.myScriptGetActiveAndActiveNearTermTasks(rangeInDays, statusDate);
} catch (Exception e)  { e.printStackTrace(); }
    
    

    &lt;!-- connections --&gt;
    
    
    
    
      Boolean foundIt = (Boolean)  kcontext.getVariable(&quot;found&quot;) ;
System.out.println (&quot;in XOR with found having value &quot;  + foundIt) ;
return !foundIt  ;
    
    
    
    
    
    
      Boolean foundIt = (Boolean)  kcontext.getVariable(&quot;found&quot;) ;
System.out.println (&quot;in XOR with found having value &quot;  + foundIt) ;
return foundIt  ;
    
    

  

  
    
      
        
      
      
        
      
      
        
      
      
        
      
      
        
      
      
        
      
      
        
      
      
        
      
      
        
      
      
        
      
      
        
      
      
        
        
      
      
        
        
      
      
        
        
      
      
        
        
      
      
        
        
      
      
        
        
      
      
        
        
      
      
        
        
      
      
        
        
      
      
        
        
      
    
  


&lt;/code&gt;</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/18fb9e4b43e0b0bbe66fccd20812d164?s=80&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D80&amp;r=G' class='avatar avatar-80 photo' height='80' width='80' /></div>
<p>Excellent article!</p>
<p>I created my own listener and logged the run of one of my working processes.  I was shocked by the output.  It appears that the listener runs on the SAME thread (as seen in the log) and yet the logging is out of order,  even  the &#8220;afterProcessCompleted&#8221; event.  Am I doing something wrong?<br />
I use jBPM5.2 with Drools 5.3 on Jboss App Server 7.1 final.</p>
<p>Thank you for any insight you can offer.</p>
<p><code><br />
Line 278: 11:53:01,726 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeProcessStarted<br />
	Line 280: 11:53:01,742 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 281: 11:53:01,742 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 282: 11:53:01,757 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 291: 11:53:01,757 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 292: 11:53:01,757 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 295: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 296: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 297: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 298: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 299: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 300: 11:53:01,773 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 301: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 302: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 303: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 304: 11:53:01,788 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterProcessStarted<br />
	Line 306: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 307: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 312: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 313: 11:53:01,804 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 3976: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 3977: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 3978: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 3979: 11:53:10,806 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 4079: 11:53:10,946 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 4080: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeTriggered<br />
	Line 4081: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeNodeLeft<br />
	Line 4082: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) beforeProcessCompleted<br />
	Line 4083: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterProcessCompleted<br />
	Line 4084: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 4085: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 4086: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 4087: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 4088: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 4089: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 4090: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 4091: 11:53:10,962 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 4092: 11:53:10,977 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
	Line 4093: 11:53:10,977 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeTriggered<br />
	Line 4094: 11:53:10,977 INFO  [FrameworkEventMonitor] (http--0.0.0.0-8080-2) afterNodeLeft<br />
</code></p>
<p>The BPMN is as follows.<br />
<code></p>
<p>    <!-- process variables --></p>
<p>    <!-- nodes --></p>
<p>      try<br />
{<br />
MonitorUtil.monitor(kcontext) ;</p>
<p>// prepare the feed for the decision table<br />
AnIMSFile projectFile  =null ; </p>
<p>try {<br />
         projectFile =  imsFileNoun.find(projectName) ;<br />
} catch (Exception e) { System.out.println ("noun!!!!!!!!!!!") ; e.printStackTrace(); }</p>
<p>Boolean foundIt = (projectFile != null) ;</p>
<p>//global String projectUID<br />
projectUID = "" ;<br />
if (foundIt) {  projectUID= projectFile.getFileUID(); }</p>
<p>kcontext.setVariable ("projectUID",projectUID);<br />
kcontext.setVariable ("found", foundIt) ;</p>
<p>//System.out.println (projectName + projectUID  + "     " + foundIt) ;<br />
//System.out.println ("------------------------------------------------------FOUND-----------------    " + foundIt) ;</p>
<p> }catch (Exception e)  { e.printStackTrace(); }</p>
<p>          _20_userNameInput<br />
          _20_projectNameInput<br />
          _20_DueDateInput<br />
          _20_ListNameInput<br />
          _20_AssignedToInput<br />
          _20_TitleInput</p>
<p>          _20_serviceResultsOutput</p>
<p>        userName<br />
        _20_userNameInput</p>
<p>        projectName<br />
        _20_projectNameInput</p>
<p>        _20_DueDateInput</p>
<p>          TODO<br />
          _20_DueDateInput</p>
<p>        _20_ListNameInput</p>
<p>          Tasks for IBE Developers<br />
          _20_ListNameInput</p>
<p>        _20_AssignedToInput</p>
<p>          Lillian Andres<br />
          _20_AssignedToInput</p>
<p>        _20_TitleInput</p>
<p>          check project - may need to add to the database<br />
          _20_TitleInput</p>
<p>        _20_serviceResultsOutput<br />
        serviceResults</p>
<p>      try<br />
{<br />
//System.out.println("Gather Work Packages from Active Detail Tasks");</p>
<p>MonitorUtil.monitor(kcontext) ;</p>
<p>filteredOutputTasks.getWorkPkgsFromActiveTasks();	// sets workPkds</p>
<p>//System.out.println("DONE Gather Work Packages from Active Detail Tasks");<br />
 } catch (Exception e)  { e.printStackTrace(); }</p>
<p>      try<br />
{<br />
MonitorUtil.monitor(kcontext) ;</p>
<p>String forLog = filteredOutputTasks.myScriptDisplayTask(rangeInDays, statusDate, "\n");</p>
<p>System.out.println("=======================================");<br />
System.out.println (forLog) ;<br />
System.out.println("=======================================");</p>
<p>MonitorUtil.stopMonitorProcess(kcontext) ;<br />
} catch (Exception e)  { e.printStackTrace(); }</p>
<p>System.out.println("user name is " + userName ) ;<br />
System.out.println("statusDate is " + statusDate) ;<br />
System.out.println("range in days " + rangeInDays) ;<br />
System.out.println("project name  is " + projectName) ;</p>
<p>MonitorUtil.monitor(kcontext) ;</p>
<p>      try<br />
{<br />
MonitorUtil.monitor(kcontext) ;</p>
<p>//System.out.println (projectName + " = " + projectUID) ;<br />
//System.out.println ("filteredOutputTasks = " + filteredOutputTasks) ;<br />
try {<br />
       filteredOutputTasks.fillRulePassedTasks (projectUID) ;<br />
       } catch (Exception e) { e.printStackTrace(); }</p>
<p>filteredOutputTasks.myScriptGetActiveAndActiveNearTermTasks(rangeInDays, statusDate);<br />
} catch (Exception e)  { e.printStackTrace(); }</p>
<p>    <!-- connections --></p>
<p>      Boolean foundIt = (Boolean)  kcontext.getVariable("found") ;<br />
System.out.println ("in XOR with found having value "  + foundIt) ;<br />
return !foundIt  ;</p>
<p>      Boolean foundIt = (Boolean)  kcontext.getVariable("found") ;<br />
System.out.println ("in XOR with found having value "  + foundIt) ;<br />
return foundIt  ;</p>
<p></code>
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Event Driven Business Process Management in jBPM5 by Saigo</title>
		<link>http://www.plugtree.com/event-driven-business-process-management-in-jbpm5/comment-page-1/#comment-18765</link>
		<dc:creator>Saigo</dc:creator>
		<pubDate>Wed, 18 Apr 2012 08:33:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.plugtree.com/?p=26492#comment-18765</guid>
		<description>Hi!

First: thanks for good example.
But I found a bug in the rule: 

&lt;code&gt;
over window:size(1h),
&lt;/code&gt;

window:size doesn&#039;t work. I fixed it to:

&lt;code&gt;
over window:time(1h),
&lt;/code&gt;</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://0.gravatar.com/avatar/e6695dd375b1e8b6ffbcda7dd843da0c?s=80&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D80&amp;r=G' class='avatar avatar-80 photo' height='80' width='80' /></div>
<p>Hi!</p>
<p>First: thanks for good example.<br />
But I found a bug in the rule: </p>
<p><code><br />
over window:size(1h),<br />
</code></p>
<p>window:size doesn&#8217;t work. I fixed it to:</p>
<p><code><br />
over window:time(1h),<br />
</code>
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Plugtree jBPM5 Tutorial #1 : Modeling your basic processes by Jigar</title>
		<link>http://www.plugtree.com/plugtree-jbpm5-tutorial-1-modeling-your-basic-processes/comment-page-1/#comment-17360</link>
		<dc:creator>Jigar</dc:creator>
		<pubDate>Fri, 23 Mar 2012 07:38:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.plugtree.com/?p=28563#comment-17360</guid>
		<description>Considering a broad aspect, 

Any best practices on how to fit  this piece of process in big architecture</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/39acb52ff074bc477f0325f4b1960c90?s=80&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D80&amp;r=G' class='avatar avatar-80 photo' height='80' width='80' /></div>
<p>Considering a broad aspect, </p>
<p>Any best practices on how to fit  this piece of process in big architecture
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Plugtree jBPM5 Tutorial #1 : Modeling your basic processes by Jigar</title>
		<link>http://www.plugtree.com/plugtree-jbpm5-tutorial-1-modeling-your-basic-processes/comment-page-1/#comment-17359</link>
		<dc:creator>Jigar</dc:creator>
		<pubDate>Fri, 23 Mar 2012 07:36:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.plugtree.com/?p=28563#comment-17359</guid>
		<description>Fixed above error by selecting  code in conditions</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/39acb52ff074bc477f0325f4b1960c90?s=80&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D80&amp;r=G' class='avatar avatar-80 photo' height='80' width='80' /></div>
<p>Fixed above error by selecting  code in conditions
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Plugtree jBPM5 Tutorial #1 : Modeling your basic processes by Jigar</title>
		<link>http://www.plugtree.com/plugtree-jbpm5-tutorial-1-modeling-your-basic-processes/comment-page-1/#comment-17205</link>
		<dc:creator>Jigar</dc:creator>
		<pubDate>Wed, 21 Mar 2012 06:44:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.plugtree.com/?p=28563#comment-17205</guid>
		<description>I added diverge gateway in to the .bpmn file and started facing

&lt;code&gt;
org.drools.RuntimeDroolsException: invalid package name
	at org.jbpm.compiler.ProcessBuilderImpl.buildProcess(ProcessBuilderImpl.java:173)
	at org.jbpm.compiler.ProcessBuilderImpl.addProcessFromXml(ProcessBuilderImpl.java:252)
	at org.drools.compiler.PackageBuilder.addProcessFromXml(PackageBuilder.java:564)
	at org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:608)
	at org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:37)
	at com.sample.ProcessMain.readKnowledgeBase(ProcessMain.java:25)
	at com.sample.ProcessMain.main(ProcessMain.java:17)
[12,13]: [ERR 102] Line 12:13 mismatched input &#039;false&#039; in rule &quot;RuleFlow-Split-com.sample.bpmn.hello-5-6-DROOLS_DEFAULT&quot;
[0,0]: Parser returned a null Package
ProcessLoadError: unable to parse xml : Exception class org.drools.RuntimeDroolsException : invalid package name
Exception in thread &quot;main&quot; java.lang.IllegalArgumentException: Could not parse knowledge.
	at org.drools.builder.impl.KnowledgeBuilderImpl.newKnowledgeBase(KnowledgeBuilderImpl.java:67)
	at com.sample.ProcessMain.readKnowledgeBase(ProcessMain.java:27)
	at com.sample.ProcessMain.main(ProcessMain.java:17)
&lt;/code&gt;</description>
		<content:encoded><![CDATA[<div style="float:right; margin:1em"><img alt='' src='http://1.gravatar.com/avatar/39acb52ff074bc477f0325f4b1960c90?s=80&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D80&amp;r=G' class='avatar avatar-80 photo' height='80' width='80' /></div>
<p>I added diverge gateway in to the .bpmn file and started facing</p>
<p><code><br />
org.drools.RuntimeDroolsException: invalid package name<br />
	at org.jbpm.compiler.ProcessBuilderImpl.buildProcess(ProcessBuilderImpl.java:173)<br />
	at org.jbpm.compiler.ProcessBuilderImpl.addProcessFromXml(ProcessBuilderImpl.java:252)<br />
	at org.drools.compiler.PackageBuilder.addProcessFromXml(PackageBuilder.java:564)<br />
	at org.drools.compiler.PackageBuilder.addKnowledgeResource(PackageBuilder.java:608)<br />
	at org.drools.builder.impl.KnowledgeBuilderImpl.add(KnowledgeBuilderImpl.java:37)<br />
	at com.sample.ProcessMain.readKnowledgeBase(ProcessMain.java:25)<br />
	at com.sample.ProcessMain.main(ProcessMain.java:17)<br />
[12,13]: [ERR 102] Line 12:13 mismatched input 'false' in rule "RuleFlow-Split-com.sample.bpmn.hello-5-6-DROOLS_DEFAULT"<br />
[0,0]: Parser returned a null Package<br />
ProcessLoadError: unable to parse xml : Exception class org.drools.RuntimeDroolsException : invalid package name<br />
Exception in thread "main" java.lang.IllegalArgumentException: Could not parse knowledge.<br />
	at org.drools.builder.impl.KnowledgeBuilderImpl.newKnowledgeBase(KnowledgeBuilderImpl.java:67)<br />
	at com.sample.ProcessMain.readKnowledgeBase(ProcessMain.java:27)<br />
	at com.sample.ProcessMain.main(ProcessMain.java:17)<br />
</code>
<div style="clear:both;"></div>
]]></content:encoded>
	</item>
</channel>
</rss>

