<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
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/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>Learning by Experience &#187; jbpm</title> <atom:link href="http://www.inze.be/andries/category/jbpm/feed/" rel="self" type="application/rss+xml" /><link>http://www.inze.be/andries</link> <description>Java, Project Management, Life and anything else.</description> <lastBuildDate>Mon, 09 Jan 2012 21:38:00 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>JBPM4 Spring integration has made it to Spring Enterprise Recipes</title><link>http://www.inze.be/andries/2009/12/17/jbpm4-spring-integration-has-made-it-to-spring-enterprise-recipes/</link> <comments>http://www.inze.be/andries/2009/12/17/jbpm4-spring-integration-has-made-it-to-spring-enterprise-recipes/#comments</comments> <pubDate>Thu, 17 Dec 2009 19:43:24 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[bpm]]></category> <category><![CDATA[jbpm]]></category> <category><![CDATA[Spring]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=212</guid> <description><![CDATA[This is the first book that explains the Spring integration within jBPM. I&#8217;ve managed to see a copy of the long explanation. I&#8217;m impressed with the explanation and it is very understanding and complete! Saves me the trouble of testing the integration on Spring3 aswell I&#8217;m also referenced by name in the book, a nice [...]]]></description> <content:encoded><![CDATA[<p><a
href="http://www.apress.com/book/view/1430224975">This is the first book</a> that explains the Spring integration within jBPM. I&#8217;ve managed to see a copy of the long explanation. I&#8217;m impressed with the explanation and it is very understanding and complete! Saves me the trouble of testing the integration on Spring3 aswell <img
src='http://www.inze.be/andries/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><p>I&#8217;m also referenced by name in the book, a nice pitch for me! I&#8217;ve ordered the book and I&#8217;ll publish a review later, but from what I&#8217;ve seen it looks very promising.</p><p>It&#8217;s written by <strong
style="font-weight: normal;">Gary Mak</strong> of the best-selling <em>Spring Recipes</em> and <a
href="http://www.joshlong.com/"><strong
style="font-weight: normal;">Josh Long</strong></a>, an expert Spring user and developer.</p><p><a
href="http://www.apress.com/resource/bookcover/9781430224976?size=medium"><img
class="aligncenter" title=" Spring Enterprise Recipes: A Problem-Solution Approach" src="http://www.apress.com/resource/bookcover/9781430224976?size=medium" alt="" width="125" height="165" /></a></p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/12/17/jbpm4-spring-integration-has-made-it-to-spring-enterprise-recipes/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>jBPM Developer book review</title><link>http://www.inze.be/andries/2009/12/15/jbpm-developer-book-review/</link> <comments>http://www.inze.be/andries/2009/12/15/jbpm-developer-book-review/#comments</comments> <pubDate>Tue, 15 Dec 2009 21:54:22 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[bpm]]></category> <category><![CDATA[jboss]]></category> <category><![CDATA[jbpm]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=205</guid> <description><![CDATA[Packt publishing is sending me a review copy of the jBPM Developer Guide. I&#8217;m looking forward to this book. The summary promises among others: Key concepts of Business Process Management to understand how the community leads and implements open source software Gain deep understanding of JPDL, the preferred process language, to know how your processes [...]]]></description> <content:encoded><![CDATA[<p><a
href="http://www.packtpub.com/">Packt publishing</a> is sending me a review copy of the <a
href="http://www.packtpub.com/jboss-business-process-management-jbpm-developer-guide?utm_source=inze.be&amp;utm_medium=bookrev&amp;utm_content=blog&amp;utm_campaign=mdb_001841#indetail">jBPM Developer Guide</a>. I&#8217;m looking forward to this book. The summary promises among others:</p><ul><li> Key concepts of Business Process Management to understand how the community leads and implements open source software</li><li> Gain <strong>deep understanding </strong>of JPDL, the preferred process language, to know how your processes must be defined and implemented</li><li> Convert your projects into fully featured applications with advanced jBPM features such as the persistence service and human task mechanism</li><li> Understand the framework&#8217;s behavior in <strong>different environments</strong></li><li> Create and configure Human Task activities to model situations where human beings interact with the process</li><li> Understand how the framework handles information that flows through your business process</li><li> Configure the persistence service to <strong>reduce risk </strong>and perform successful implementations with jBPM</li><li> Improve your process definitions using nodes</li><li> Configure the Eclipse IDE to start modeling your processes</li></ul><p>Keep an eye on this blog to read the review.</p><p>Regards,<br
/> Andries</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/12/15/jbpm-developer-book-review/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>How to run statistics on SVN</title><link>http://www.inze.be/andries/2009/11/10/how-to-run-statistics-on-svn/</link> <comments>http://www.inze.be/andries/2009/11/10/how-to-run-statistics-on-svn/#comments</comments> <pubDate>Mon, 09 Nov 2009 22:03:32 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[general]]></category> <category><![CDATA[jbpm]]></category> <category><![CDATA[management]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=199</guid> <description><![CDATA[Ever wondered who is &#8220;Developer of the month?&#8221;. I&#8217;ve found this great app that does just the thing&#8230; http://www.statsvn.org/ . I&#8217;ve taken the liberty to run it on the jBPM4 trunk, check it out here! From the quick start: Quick Start * Download the latest release from http://sourceforge.net/projects/statsvn/ * Expand the zip file into some [...]]]></description> <content:encoded><![CDATA[<p>Ever wondered who is &#8220;Developer of the month?&#8221;. I&#8217;ve found this great app that does just the thing&#8230; http://www.statsvn.org/ .<br
/> I&#8217;ve taken the liberty to run it on the jBPM4 trunk, check it out <a
href="http://www.inze.be/jbpm/statsvn/index.html">here!</a></p><p>From the quick start:</p><blockquote><pre>Quick Start
 * Download the latest release from http://sourceforge.net/projects/statsvn/
 * Expand the zip file into some directory, e.g c:\statsvn
 * Check out a working copy of the desired SVN module into
 some directory, e.g. c:\myproject.
 * Change into that directory and type
 'svn log --xml -v &gt; svn.log'
 * Change back to the c:\statsvn directory
 * type 'java -jar statsvn.jar c:\myproject\svn.log c:\myproject'
 * Open c:\statsvn\index.html in your web browser</pre></blockquote><p>Regards,<br
/> Andries</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/11/10/how-to-run-statistics-on-svn/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Official Spring jBPM4 documentation.</title><link>http://www.inze.be/andries/2009/07/19/official-spring-jbpm4-documentation/</link> <comments>http://www.inze.be/andries/2009/07/19/official-spring-jbpm4-documentation/#comments</comments> <pubDate>Sun, 19 Jul 2009 09:23:28 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[jbpm]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=185</guid> <description><![CDATA[I get a lot of questions about the Spring integration, by mail and as blog comments. Almost all these questions can be answered by reading the developers guide of jBPM4, which you can find here . If you still have questions, please post them at the forums. My spies (c.f. Joram) at JBoss keeps me [...]]]></description> <content:encoded><![CDATA[<p>I get a lot of questions about the Spring integration, by mail and as blog comments. Almost all these questions can be answered by reading the developers guide of jBPM4, which you can find <a
href="http://docs.jboss.com/jbpm/v4.0/devguide/html_single/#springIntegration">here </a>.</p><p>If you still have questions, please post them at <a
href="http://www.jboss.org/index.html?module=bb&amp;op=viewforum&amp;f=217">the forums</a>. My spies (c.f. Joram) at JBoss keeps me posted of any Spring related topic, and I&#8217;m more then happy to answer the questions there.</p><p>KR,<br
/> Andries</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/07/19/official-spring-jbpm4-documentation/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>jBPM4 is out!</title><link>http://www.inze.be/andries/2009/07/11/jbpm4-is-out/</link> <comments>http://www.inze.be/andries/2009/07/11/jbpm4-is-out/#comments</comments> <pubDate>Sat, 11 Jul 2009 08:47:05 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[jbpm]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=179</guid> <description><![CDATA[Read all about it at Tom his blog. KR, Andries]]></description> <content:encoded><![CDATA[<p>Read all about it at <a
href="http://processdevelopments.blogspot.com/2009/07/jbpm-40-is-out.html">Tom his blog.</a></p><p>KR,<br
/> Andries</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/07/11/jbpm4-is-out/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Documentation Spring jBPM integration</title><link>http://www.inze.be/andries/2009/06/28/documentation-spring-jbpm-integration/</link> <comments>http://www.inze.be/andries/2009/06/28/documentation-spring-jbpm-integration/#comments</comments> <pubDate>Sun, 28 Jun 2009 19:11:33 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[jboss]]></category> <category><![CDATA[jbpm]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=159</guid> <description><![CDATA[Any project, especially open source projects, rise or fall with proper documentation. Following post serves a dual purpose, it&#8217;s a blog post (duh) but also a first draft for the devguide documentation of jBPM4. Things might sound a little weird, but that&#8217;s the reason. Design Transaction Management A typical Spring application defines transaction management and [...]]]></description> <content:encoded><![CDATA[<p>Any project, especially open source projects, rise or fall with proper documentation. Following post serves a dual purpose, it&#8217;s a blog post (duh) but also a first draft for the <a
href="http://docs.jboss.com/jbpm/v4.0/devguide/html_single/">devguide documentation</a> of jBPM4. Things might sound a little weird, but that&#8217;s the reason.</p><h2>Design</h2><h3>Transaction Management</h3><p>A typical Spring application defines transaction management and ORM definition.  It follows following scheme:</p><p><a
href="http://www.inze.be/andries/wp-content/Screenshot-1.png.jpg"><img
class="alignnone size-thumbnail wp-image-164" title="Screenshot-1.png" src="http://www.inze.be/andries/wp-content/Screenshot-1.png-150x150.jpg" alt="Screenshot-1.png" width="150" height="150" /></a></p><p>Applications are accessed from the web tier and enter the transactional boundary by invoking service beans. These service beans will access the jBPM services. Spring users expect that all these operations run in a single transaction, which as we&#8217;ll see makes testing a lot easier.</p><p>In reality, we replace the standard-transaction-interceptor by a spring-transaction interceptor. Instead of starting and committing transactions, we want to reuse any existing transactions (which was already started by Spring).</p><p>The same is true for the hibernate session, which will be available through Spring.</p><h3>Spring Context</h3><p>JBPM4 comes with multiple contexts, which contains beans. With the <em>SpringContext</em>, we add the Spring Application Context to this set of contexts.</p><h2>Configuration</h2><p>Replace the <em>standard-transaction-interceptor</em> with the <em>spring-transaction-interceptor</em>.</p><p>The hibernate session needs the attribute <em>current=&#8221;true&#8221;.</em> This forces jBPM to search for the current session, which will be provided by Spring.</p><p>For the Spring context to be known, we created a <em>SpringConfiguration</em>. This extends the <em>JbpmConfiguration</em> but will add itself as a context. The single constructor take the location of the jBPM configuration.</p><pre>&lt;bean id="jbpmConfiguration" class=”org.jbpm.pvm.internal.cfg.SpringConfiguration”&gt;
   &lt;constructor-arg value="be/inze/spring/demo/jbpm.cfg.xml" /&gt;
&lt;/bean&gt;</pre><p>The services can also be defined in the Spring applicationContext, as following:</p><pre>&lt;bean id="processEngine" factory-bean="jbpmConfiguration" factory-method="buildProcessEngine" /&gt;
&lt;bean id="repositoryService" factory-bean="processEngine" factory-method="getRepositoryService" /&gt;
&lt;bean id="executionService" factory-bean="processEngine" factory-method="getExecutionService" /&gt;</pre><p>For accessing Spring beans from a process, we need to register the Spring applicationContext. This can be done as following:</p><pre>&lt;script-manager default-expression-language="juel"
 default-script-language="juel"
 read-contexts="execution, environment, process-engine, <strong>spring</strong>"
 write-context=""&gt;
 &lt;script-language name="juel"
 factory="org.jbpm.pvm.internal.script.JuelScriptEngineFactory" /&gt;
 &lt;/script-manager&gt;</pre><h2>Use</h2><p>In jBPM4 most development will happen through the client API aka the services. Simple inject these beans into your transactional service methods and start using them.</p><p>Invoking Spring beans from a process can be done as following:</p><pre>&lt;java name="echo" expr="#{echoService}" method="sayHello" &gt;
    &lt;transition name="to accept" to="join1"/&gt;
 &lt;/java&gt;</pre><p>The scripting engine will look into all contexts from the bean named <em>echoService</em>. If you configured the ScriptManager as above, Spring will be the last context to search for. A good practice is to use unique names for the beans.</p><h2>Testing</h2><p>With the <em>AbstractTransactionalJbpmTestCase</em> we can test the process in isolation. Extending from <em>AbstractTransactionalDataSourceSpringContextTests</em> we can test like we test our DAO&#8217;s.</p><p>Any feedback is appreciated.</p><p>KR,<br
/> Andries</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/06/28/documentation-spring-jbpm-integration/feed/</wfw:commentRss> <slash:comments>53</slash:comments> </item> <item><title>Spring jBPM4 CR1 Demo</title><link>http://www.inze.be/andries/2009/06/08/spring-jbpm4-cr1-demo/</link> <comments>http://www.inze.be/andries/2009/06/08/spring-jbpm4-cr1-demo/#comments</comments> <pubDate>Mon, 08 Jun 2009 19:01:33 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[jbpm]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=150</guid> <description><![CDATA[Last Friday, the jBPM Team has released jBPM 4.0.CR1. I&#8217;ve updated the demo, not much has changed. You can find the source code here . Most notable changes to the demo: Resolving Spring Beans As I mentioned briefly, it is now possible to call Spring beans from a process. Using the scripting, any bean with [...]]]></description> <content:encoded><![CDATA[<p>Last Friday, the jBPM Team has released jBPM 4.0.CR1. I&#8217;ve updated the demo, not much has changed.<br
/> You can find the source code <a
href="http://code.google.com/p/jbpm4-spring-demo/source/checkout">here</a> .<br
/> Most notable changes to the demo:</p><h3>Resolving Spring Beans</h3><p>As I mentioned briefly, it is now possible to call Spring beans from a process. Using the scripting, any bean with any parameter can be called from the process.</p><h3>Testing using AbstractTransactionJbpmTestCase</h3><p>As we are used in spring-test, we test our processes in a transactional way. Using <a
href="http://code.google.com/p/jbpm4-spring-demo/source/browse/trunk/src/test/java/org/jbpm/spring/test/AbstractTransactionalSpringJbpmTestCase.java">this class</a>, we can accomplish the same.</p><p>The only thing missing now is timer support, which I&#8217;ll add before the final release!</p><p>Any feedback is welcome,</p><p>KR, Andries</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/06/08/spring-jbpm4-cr1-demo/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Sneak peak at Spring Activities</title><link>http://www.inze.be/andries/2009/05/31/sneak-peak-at-spring-activities/</link> <comments>http://www.inze.be/andries/2009/05/31/sneak-peak-at-spring-activities/#comments</comments> <pubDate>Sun, 31 May 2009 11:14:12 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[jbpm]]></category> <category><![CDATA[Spring]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=141</guid> <description><![CDATA[Calling Spring beans from a process is a minimum requirement for any Spring &#8211; jBPM4 integration. Starting from RC1, changes have been made by Tom which enables following activity definition: The expr resolves the Spring bean. Furthermore, it&#8217;s possible to provide parameters, as following: I&#8217;m waiting for the release of RC1 before I&#8217;ll update the [...]]]></description> <content:encoded><![CDATA[<p>Calling Spring beans from a process is a minimum requirement for any Spring &#8211; jBPM4 integration. Starting from RC1, changes have been made by Tom which enables following activity definition:</p><pre lang="xml"><java name="echo" expr="#{echoService}" method="sayHello" >
<transition name="java2" to="java2" />
</java></pre><p>The<em> expr </em>resolves the Spring bean. Furthermore, it&#8217;s possible to provide parameters, as following:</p><pre lang="xml"><java expr="#{echoService}" method="sayHelloWithExecution"
	name="java2">
	<arg>
		<env type="org.jbpm.pvm.internal.history.HistorySession" />
	</arg>
<transition name="to give up" to="give up" />
</java></pre><p>I&#8217;m waiting for the release of RC1 before I&#8217;ll update the demo application.</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/05/31/sneak-peak-at-spring-activities/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Spring integration part of jBPM4 trunk</title><link>http://www.inze.be/andries/2009/05/24/spring-integration-part-of-jbpm4-trunk/</link> <comments>http://www.inze.be/andries/2009/05/24/spring-integration-part-of-jbpm4-trunk/#comments</comments> <pubDate>Sun, 24 May 2009 09:53:19 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[jbpm]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=139</guid> <description><![CDATA[Friday I committed the Spring integration into the jBPM trunk. It will be available in jBPM4 RC1! I&#8217;ll update the demo app soon, since there are some breaking changes concerning configuration. KR, Andries]]></description> <content:encoded><![CDATA[<p>Friday I committed the Spring integration into the jBPM trunk. It will be available in jBPM4 RC1!<br
/> I&#8217;ll update the demo app soon, since there are some breaking changes concerning configuration.</p><p>KR,<br
/> Andries</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/05/24/spring-integration-part-of-jbpm4-trunk/feed/</wfw:commentRss> <slash:comments>10</slash:comments> </item> <item><title>Spring Integration in jBPM3</title><link>http://www.inze.be/andries/2009/04/17/spring-integration-in-jbpm3/</link> <comments>http://www.inze.be/andries/2009/04/17/spring-integration-in-jbpm3/#comments</comments> <pubDate>Fri, 17 Apr 2009 07:15:47 +0000</pubDate> <dc:creator>Andries Inzé</dc:creator> <category><![CDATA[jbpm]]></category> <category><![CDATA[Spring]]></category> <guid
isPermaLink="false">http://www.inze.be/andries/?p=119</guid> <description><![CDATA[Joram has started his series on Spring Integration in jBPM3. Be sure to check it out! I&#8217;m sure it&#8217;ll be the best write-up on the topic and a must read for all who is facing the same problem.]]></description> <content:encoded><![CDATA[<p>Joram has started his series on Spring Integration in jBPM3. Be sure to check it <a
href="http://www.jorambarrez.be/blog/2009/04/17/integrating-jbpm3-with-spring-part1/">out</a>! I&#8217;m sure it&#8217;ll be the best write-up on the topic and a must read for all who is facing the same problem.</p> ]]></content:encoded> <wfw:commentRss>http://www.inze.be/andries/2009/04/17/spring-integration-in-jbpm3/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
