It turns out that there is very little information about how to sending JMS messages as part of a JTA transaction using JMS API. Most examples on the web use false for parameter transacted in QueueConnection.createQueueSession(boolean transacted, int acknowledgeMode); in which case the message is sent directly and not at the commit of the JTA transaction.
So I was happy when I found Odi's article: JMS transactions with JTA in JBoss 4.
And from a quick look, there seems to be a lot of interesting developer content on Odi's site. Definitely worth a look.
At first sight, you might think that I'm just sharing this with the world to make it a better place. But actually I'm just adding this 1 link to google's pagerank so that I'll find it quicker next time I need it ;-)
Wednesday, 23 December 2009
Wednesday, 16 December 2009
Top 10 Devoxx Talks On Parleys
Amazing! Just a week after Devoxx, the talks were already available online. So if you were not able to come in person to Devoxx (only allowed with a doctors note:-), or if like me, you have spend all your time talking to people instead of attending the sessions then you can see still attend all the talks now on Parleys beta for only 49 EUR. If you ask me that is peanuts for a lot of great content that is still up to date.
For the moment the most viewed Devoxx'09 talks are:
For the moment the most viewed Devoxx'09 talks are:
- Craftsmanship and Policy - Robert C. Martin
- The JavaPosse Live (First free talk)
- JDK7 Update and Java SE 7 - Mark Reinhold
- Enterprising JavaFX - Richard Bair & Jasper Potts
- Turning labors of love into day jobs - James Gosling
- Project Lombok - Roel Spilker & Reinier Zwitserloot
- Project Coin - Joseph D. Darcy
- jBPM4 in Action - Tom Baeyens & Joram Barrez
- Do we really know how to develop software?- Ivar Jacobson
- The Cambrian Cloud Computing Explosion - John M Willis
Spring Enterprise Recipes Explains jBPM4's Spring Integration
It seems to be the jBPM book season :-) The new jBPM-Spring integration of jBPM 4 is explained in a new book called Spring Enterpriese Recipes. It's written by Gary Mak of the best-selling Spring Recipes and Josh Long, an expert Spring user and developer, Spring Enterprise Recipes is one of the first books on the new Spring 3.
Wow, that's some quick publishing! Just in time so that you can give these jBPM books as a xmas present to your wife, husband or partner ;-)
Wow, that's some quick publishing! Just in time so that you can give these jBPM books as a xmas present to your wife, husband or partner ;-)
New Book: jBPM Developer Guide By Salaboy
Salaboy just finished his new jBPM Developer Guide.
So fresh the ink is still wet. But no worries, there's also an eBook version of it.
Kudo's, Salaboy! Nice work.
So fresh the ink is still wet. But no worries, there's also an eBook version of it.
Kudo's, Salaboy! Nice work.
Thursday, 10 December 2009
Ronald Enters Hall Of Fame
Ronald finally gets due credits for his long term commitment and contributions to jBPM. Here's a ranking of top posters in all of JBoss community. To me, this is the real hall of fame. Respect!
He's now in an awsome 3rd place only behind Adrian "MC" Brock and Scott "SX" Stark. Adrian and Scott are both one of the first JBoss employees and they basically wrote (and still write) JBoss. So being in that company as an external contributor is a major achievement.
And we're even more proud since you've accomplished this with mostly jBPM discussions.
Congrats, Ronald. Again, respect.
He's now in an awsome 3rd place only behind Adrian "MC" Brock and Scott "SX" Stark. Adrian and Scott are both one of the first JBoss employees and they basically wrote (and still write) JBoss. So being in that company as an external contributor is a major achievement.
And we're even more proud since you've accomplished this with mostly jBPM discussions.
Congrats, Ronald. Again, respect.
Monday, 7 December 2009
The First OSS BPMN 2 Process Engine
Next month, jBPM will be the first open source process engine that natively runs BPMN 2 executable processes. BPMN 2 will be released as part of jBPM 4.3 next month (January 1st) Awsome ! And we got a lot more tricks lined up. Next months are going to be interesting.
A special thanks to our honoured community members Bernd Ruecker and Ronald van Kuijk for kicking off our BPMN implementation back in July. Congrats, Guys! Well done.
Joram Barrez already shows a complete preview with BPMN 2. Check it out !
Joram also created a wiki page full of usefull information on our BPMN language, including a description on how we position it against our jPDL language.
A special thanks to our honoured community members Bernd Ruecker and Ronald van Kuijk for kicking off our BPMN implementation back in July. Congrats, Guys! Well done.
Joram Barrez already shows a complete preview with BPMN 2. Check it out !
Joram also created a wiki page full of usefull information on our BPMN language, including a description on how we position it against our jPDL language.
Tuesday, 24 November 2009
Thursday, 19 November 2009
Wednesday, 18 November 2009
Devoxx Starts Strong, Lot Of Attention For jBPM
That's the interpreted translation of this article on ZDNet. Indeed Devoxx is a great place to be. For sure if you know that the JBoss booth is at the center and it has a beer tap and a soccer table :-)
And that attention will continue this afternoon. Our talk this afternoon is at 15:10. If you're at Devoxx (and you should!) then I hope to see you there. We even have a couple of limited-edition-jbpm-t-shirts to give away.
And that attention will continue this afternoon. Our talk this afternoon is at 15:10. If you're at Devoxx (and you should!) then I hope to see you there. We even have a couple of limited-edition-jbpm-t-shirts to give away.
Thursday, 12 November 2009
Planning Your Devoxx Schedule?
Don't forget to include these jBPM talks:
jBPM in Action
University Talk
Monday November 16th, 9am - 12am
Me and Joram Barrez will start with simple examples and then goes deeper technical. You'll get the full works and learn how to unleash all the power of jBPM.
Meet the jBPM Team
BOF
Monday November 16th, 7pm - 8pm
More informal get together with the core developers of jBPM. We'll have some materials ready, but we hope that we can drive this session based on questions from you!
jBPM in Action
Conference Session
Wednesday November 18th, 3:10pm - 4:10pm
We'll show where, how and when jBPM fits into your project and include some awsome demo's.
And don't forget to check out the JavaNews magazine that is distributed!
Hope to see you there!
jBPM in Action
University Talk
Monday November 16th, 9am - 12am
Me and Joram Barrez will start with simple examples and then goes deeper technical. You'll get the full works and learn how to unleash all the power of jBPM.
Meet the jBPM Team
BOF
Monday November 16th, 7pm - 8pm
More informal get together with the core developers of jBPM. We'll have some materials ready, but we hope that we can drive this session based on questions from you!
jBPM in Action
Conference Session
Wednesday November 18th, 3:10pm - 4:10pm
We'll show where, how and when jBPM fits into your project and include some awsome demo's.
And don't forget to check out the JavaNews magazine that is distributed!
Hope to see you there!
Friday, 30 October 2009
jBPM 4.2 Adds A Lot Of Production Goodies
jBPM 4.2 makes it a lot easier to maintain a jBPM installation in production.
We've added automatic upgrades of the DB from previous 4.x versions. There is a script that you can run that automatically upgrades your jBPM DB to the new version. This includes schema updates and data updates. A version check is included that compares the jBPM library version with the jBPM DB schema version. Implementing all this was not the hard part. The hard part was setting up the QA so that every possible upgrade is tested on every possible DB. Phew! That was quite a challenge and I'm very happy we took it on and finished successfully.
We also added process instance migration. When deploying a new version of a process, you can now specify that all the old process instances have to be migrated to the new process version. This jira issue was a serious old-timer (JBPM-165!). Glad we have have it finally covered.
Also we've split up the internal parser. In jBPM 4, process files are stored in xml format in the jBPM repository. In case we would introduce jPDL changes, then old processes that are deployed in a jBPM 4 repository must still work OK in future versions. That strategy is now in place.
Then we refactored classloading to work exactly as in jBPM 3. That means that jBPM will 'see' classes and resources
Next is a portable id generator. In jBPM 4.0 and 4.1 on MySQL, when you deleted process instances and then rebooted the MySQL DB, the id generation could break down. We've now installed a portable, clusterable id generation mechanism that works the same on all DBs.
The full JIRA release notes.
Summary:
Or just browse the documentation online.
We've added automatic upgrades of the DB from previous 4.x versions. There is a script that you can run that automatically upgrades your jBPM DB to the new version. This includes schema updates and data updates. A version check is included that compares the jBPM library version with the jBPM DB schema version. Implementing all this was not the hard part. The hard part was setting up the QA so that every possible upgrade is tested on every possible DB. Phew! That was quite a challenge and I'm very happy we took it on and finished successfully.
We also added process instance migration. When deploying a new version of a process, you can now specify that all the old process instances have to be migrated to the new process version. This jira issue was a serious old-timer (JBPM-165!). Glad we have have it finally covered.
Also we've split up the internal parser. In jBPM 4, process files are stored in xml format in the jBPM repository. In case we would introduce jPDL changes, then old processes that are deployed in a jBPM 4 repository must still work OK in future versions. That strategy is now in place.
Then we refactored classloading to work exactly as in jBPM 3. That means that jBPM will 'see' classes and resources
- from inside your .war or .ear files
- from inside your business archives (.bar files). .bar file is the archive file in which you can put your jPDL processes, class files, forms and other resources and deploy them to the jBPM DB.
- from the server classpath
Next is a portable id generator. In jBPM 4.0 and 4.1 on MySQL, when you deleted process instances and then rebooted the MySQL DB, the id generation could break down. We've now installed a portable, clusterable id generation mechanism that works the same on all DBs.
The full JIRA release notes.
Summary:
- Added business archive (.bar) classloading [JBPM-2200]
- Simplified jboss jbpm service archive architecture [JBPM-2501]
- Automated database upgrade tool [JBPM-2509]
- Portable, clusterable id generation [JBPM-2526]
- Parser backwards compatibility [JBPM-2565]
- Enabled programmatic user defined transactions in JTA environments [JBPM-2524]
- Added In Incubation: Process instance versioning [JBPM-165]
- Added In Incubation: Process customization to developer api for debugging and simulation [JBPM-2578]
- A bunch of bug fixes
Or just browse the documentation online.
Wednesday, 16 September 2009
Jopr plugin for jBPM
Jopr is a management console for JBoss projects and other applications. It has a plugin architecture. Jim Ma now wrote a Jopr plugin for JBoss. Jim's blog post about the jBPM plugin includes screenshots and a simple step by step explanation, he also captured this video:
jopr jbpm plugin from JimMa on Vimeo.
Great work, Jim !
Wednesday, 9 September 2009
Great Free BPMN Training Slides
Thanks to Ronald van Kuijk, I found Jim Arlow's presentation about BPMN.
125 readable slides that give good overview and even some deeper insights into BPMN.
Introduction To BPMN
View more presentations from jimarlow.
125 readable slides that give good overview and even some deeper insights into BPMN.
JBossWorld Slides
I've posted the slides from my talk at JBossWorld.
Keep an eye on Joram Barrez' blog as he'll publish the very nice demo movies soon.
Keep an eye on Joram Barrez' blog as he'll publish the very nice demo movies soon.
Monday, 7 September 2009
Upcoming Speaking Schedule
Last weeks JBossWorld was a blast. We presented the jBPM 4.1 release, which includes our web based modeller powered by Signavio. That was very well received and generated a lot of traction. And of cource, at conferences like that, it's always nice to meet the faces behind the internet names :-)
For those who have missed JBossWorld, here's our list of upcoming jBPM talks:
RivieraJUG in Nice (France) on October 2nd
"jBPM 4: What does it do and why do I need it?"
Java Developer Day in Cracow (Poland) on October 16th
Keynote: "Pimp up your domain model with jBPM"
Devoxx (Belgium)
University talk: "jBPM 4 in Action" on November 16th
Conference session: "jBPM 4 in Action" on November 18th
Don't miss these events if you're in the neighbourhood. If you know any other jBPM related talks, please add them as a comment.
For those who have missed JBossWorld, here's our list of upcoming jBPM talks:
RivieraJUG in Nice (France) on October 2nd
"jBPM 4: What does it do and why do I need it?"
Java Developer Day in Cracow (Poland) on October 16th
Keynote: "Pimp up your domain model with jBPM"
Devoxx (Belgium)
University talk: "jBPM 4 in Action" on November 16th
Conference session: "jBPM 4 in Action" on November 18th
Don't miss these events if you're in the neighbourhood. If you know any other jBPM related talks, please add them as a comment.
Tuesday, 1 September 2009
jBPM 4.1 Released
Just in time for JBossWorld, we released jBPM 4.1. We're very proud that our collaboration with Signavio and Oryx already lead to the first results.
The web based jPDL process designer is now part of our download. Certainly worth a try.
Other things that we added
Download it from sourceforge and enjoy it.
The web based jPDL process designer is now part of our download. Certainly worth a try.
Other things that we added
- End-to-end demo: JBPM-2480
- Improved installer to handle tomcat and more configuration options : JBPM-2409
- Extended coverage of Continuous Integration and reduced the execution time
- Tomcat support in the console : JBPM-2353
- Fix process variables of type hibernate-long-id/hibernate-string-id : JBPM-2474
- Tomcat continious integration : JBPM-2409
- Domain model integration : JBPM-2474
- And a bunch of bug fixes
Download it from sourceforge and enjoy it.
Thursday, 13 August 2009
JBossWorld: 8 Chances To Learn More About jBPM
There's a big focus on jBPM at next month at JBossWorld. There's 8 talks related to jBPM. Cool!
jBPM Explained with Simple Use Cases
Tom Baeyens — Founder and Lead of JBoss jBPM (that's me :-)
Using JBoss Enterprise Middleware in NAVTEQ
Boris Lublinsky — Lead Architect, NAVTEQ
How to Combine Web, SOA and jBPM to Deliver a Flexible Case Management Platform for Public/Government e-Services
Jean-Marc Reymond — Team Leader for Java/SOA for Solutions Norway, Redpill Linpro
Using JBoss jBPM and JBoss ESB to build a high customizable multi-tenant platform
Frederico Melo — Senior Solution Architect, Ericsson
Competitive Advantage with Open Source Business Process Automation
Pierre Fricke — Director of Product Line Management, Red Hat
Business Agility with Process Centric Solutions
Jay Liu — Director of System Development, Clarks
A Collaborative Platform for the Pharmaceutical Industry using JBoss Enterprise Portal Platform and Alfresco
Alaaeldin El-Nattar — Principal Architect, Rivet Logic Corporation
Birds of a Feather: SOA, ESB, Rules, BPM, EDA
Kevin Conner, Tom Baeyens, Edson Tirelli, Burr Sutter
I'm looking forward to the event. If you want to meet up with me during JBossWorld, drop me an email.
jBPM Explained with Simple Use Cases
Tom Baeyens — Founder and Lead of JBoss jBPM (that's me :-)
Using JBoss Enterprise Middleware in NAVTEQ
Boris Lublinsky — Lead Architect, NAVTEQ
How to Combine Web, SOA and jBPM to Deliver a Flexible Case Management Platform for Public/Government e-Services
Jean-Marc Reymond — Team Leader for Java/SOA for Solutions Norway, Redpill Linpro
Using JBoss jBPM and JBoss ESB to build a high customizable multi-tenant platform
Frederico Melo — Senior Solution Architect, Ericsson
Competitive Advantage with Open Source Business Process Automation
Pierre Fricke — Director of Product Line Management, Red Hat
Business Agility with Process Centric Solutions
Jay Liu — Director of System Development, Clarks
A Collaborative Platform for the Pharmaceutical Industry using JBoss Enterprise Portal Platform and Alfresco
Alaaeldin El-Nattar — Principal Architect, Rivet Logic Corporation
Birds of a Feather: SOA, ESB, Rules, BPM, EDA
Kevin Conner, Tom Baeyens, Edson Tirelli, Burr Sutter
I'm looking forward to the event. If you want to meet up with me during JBossWorld, drop me an email.
Wednesday, 12 August 2009
jBPM User Interaction Patterns
Boris Lublinsky posted a high quality article at InfoQ about jBPM User Interaction Patterns that shows how jBPM simplifies interactions with people through tasklists. Certainly worth a read!
Tuesday, 11 August 2009
jBPM Conquers The White House?
Eric Schabell wrote an article Full Scale Straight Through Processing with BPM, explaining how jBPM was used in a Financial Institution. The article got accepted into the 2009 BPM and Workflow Handbook.
And now the good part comes. Eric writes:
We can already imagine the next conversation between President Obama and Tim Geithner, the Treasury Secretary:
And now the good part comes. Eric writes:
As the focus of this book was BPM in government, the publisher has sent a copy to the President of the United States with a personal cover letter.Awsome !
We can already imagine the next conversation between President Obama and Tim Geithner, the Treasury Secretary:
Monday, 10 August 2009
Starting JBoss And Tomcat Blocking Till Boot Is Completed
Our build is maven based. The jBPM project contains a bunch of modules. We have several integration test suites. Using the maven plugins to set up integration testing turned out to be insufficient. In order to keep our continuous integration builds platform independent we use a combination of ant scripts and mvn builds.
The strategy of our integration testing is that we start from a distribution that we unpack. Scripts like installing jBPM on JBoss are also interesting for our users. So they are included in the distribution. Then our Continuous Integration (CI) scripts leverage those scripts from the distribution. That way also those jBPM installer scripts also get validated by the CI.
For JBoss the CI build works as follows:
Last week I wanted to do the same for Tomcat. When leveraging that code just the same way as works for JBoss, Tomcat only showed environment variables and then hanged:
The clue is that Tomcat logging used not only standard output, but also standard error as output for logging. I could fix it by adding the .redirectErrorStream(true) like this:
Conclusion: When you fork a process in Java and you see it hangs unexpectedly, check if you're reading both input *and* its error stream. Or if it is for starting JBoss or Tomcat with ant, simply look in the jBPM sources.
The strategy of our integration testing is that we start from a distribution that we unpack. Scripts like installing jBPM on JBoss are also interesting for our users. So they are included in the distribution. Then our Continuous Integration (CI) scripts leverage those scripts from the distribution. That way also those jBPM installer scripts also get validated by the CI.
For JBoss the CI build works as follows:
- Build a distribution (mvn -Pdistro clean install)
- Unzip the jBPM distribution file
- Unzip JBoss
- Use the install script from the distribution to install jBPM in JBoss
- Customzie the jBPM installation for execution of the test suite
- Start JBoss
- Recreate the jBPM database schema
- Run the integration test suite remotely
- jBPM testsuite uses the plain jBPM API
- Instead of executing the commands in the testrun itself, jBPM is configured to translate all invocations to remote EJB calls transparantly
- Drop the jBPM database schema
- Shut down JBoss
task completes, that the server is up and running and ready to serve requests. We've done this in ant for a long time with an ant task and a Launcher. The StartJBossTask will create a Launcher thread, starts it and joins for it to complete.
public class StartJBossTask extends Task {The Launcher is a thread that spawns a process and listens to its InputStream till a certain message is displayed on the console by the spawned process.
private static final String END_MESSAGE = " Started in ";
public void execute() throws BuildException {
try {
// build the command string
String command = ...build the command string...;
// launch the command and wait till the END_MESSAGE appears
Thread launcher = new Launcher(this, command, END_MESSAGE, null);
launcher.start();
launcher.join();
} catch (Exception e) {
e.printStackTrace();
}
}
...
public class Launcher extends Thread {
Task task;
String command;
String endMsg;
File dir;
public Launcher(Task task, String command, String endMsg, String dir) {
this.task = task;
this.command = command;
this.endMsg = endMsg;
this.dir = (dir!=null ? new File(dir) : null);
}
public void run() {
try {
task.log("starting '" + command + "'...");
Process process = new ProcessBuilder(command)
.directory(dir)
.start();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = "";
while (line.indexOf(endMsg) == -1) {
line = reader.readLine();
task.log(line);
}
task.log("'" + command + "' started.");
} catch (IOException e) {
throw new BuildException("couldn't start '" + command + "'", e);
}
}
}
Last week I wanted to do the same for Tomcat. When leveraging that code just the same way as works for JBoss, Tomcat only showed environment variables and then hanged:
Using CATALINA_BASE: C:\Software\apache-tomcat-6.0.20Can you spot what is wrong ? Well... it took quite some time for me and that is why I'm sharing it here.
Using CATALINA_HOME: C:\Software\apache-tomcat-6.0.20
Using CATALINA_TMPDIR: C:\Software\apache-tomcat-6.0.20\temp
Using JRE_HOME: C:\Software\jdk1.5.0_11
The clue is that Tomcat logging used not only standard output, but also standard error as output for logging. I could fix it by adding the .redirectErrorStream(true) like this:
Process process = new ProcessBuilder(command)So now we have Tomcat up and running, we couldn't leverage the same remote EJB configuration as we did with JBoss. So for Tomcat CI, we leverage cactus and run the tests in the webapp.
.redirectErrorStream(true)
.directory(dir)
.start();
Conclusion: When you fork a process in Java and you see it hangs unexpectedly, check if you're reading both input *and* its error stream. Or if it is for starting JBoss or Tomcat with ant, simply look in the jBPM sources.
Tuesday, 4 August 2009
Another Good Book On jBPM
Jeff Davis just published his book "Open Source SOA". It includes 3 chapters fully dedicated to jBPM:
The book also includes some interesting jBPM integrations like Service-enabling jBPM using Apache Tuscany and Integrating Esper with jBPM. Go check it out.Part III Business process management
- Chapter 5 Introducing jBPM
- BPM: the “secret sauce” of SOA
- History and overview of JBoss jBPM
- Understanding nodes
- Using transitions
- Extending using actions
- Using events for capturing lifecycle changes in a process
- Managing context using variables
- Summary
- Chapter 6 jBPM tasks
- What are tasks?
- Task user management
- Using timers
- Task controllers
- Developing with the task API
- Summary
- Chapter 7 Advanced jBPM capabilities
- Important enterprise features of jBPM
- Integration with SCA/SDO
- Summary
Monday, 3 August 2009
jBPM Interest Peaks
Last month we crossed the chasm to a respectable 30'000 unique visitors on the jBPM.org website.
...and that in a holiday period. Nice. Keep clicking !
Everyone that knows what caused this increase in interest is wins a free jBPM 4 download :-)
...and that in a holiday period. Nice. Keep clicking !
Everyone that knows what caused this increase in interest is wins a free jBPM 4 download :-)
Tuesday, 14 July 2009
Getting Started With jBPM 4.0
A lot of getting started materials are already available. The release of jBPM 4 has not gone unnoticed.
Joram Barrez whats-new-series
jBPM4 Hello World
jBPM4: What’s new?
jBPM4: What’s new (part 2)?
jBPM4: What’s new (part 3)?
Joram also spotted and collected the following blog links. Thanks, Joram!
Jeff Yu published a great jBPM 4 intro in 3 parts:
Getting Started with jBPM 4.0 - (Part I )
Getting Started with jBPM 4.0 (Part II)
Getting Started with jBPM 4.0 (Part III)
Bernd Ruecker published a jBPM 4 showcase:
Ein kleiner jBPM 4 Showcase (In German)
English translation
Andries Inze published a demo on the Spring integration:
Spring jBPM4 CR1 Demo
Joram Barrez whats-new-series
jBPM4 Hello World
jBPM4: What’s new?
jBPM4: What’s new (part 2)?
jBPM4: What’s new (part 3)?
Joram also spotted and collected the following blog links. Thanks, Joram!
Jeff Yu published a great jBPM 4 intro in 3 parts:
Getting Started with jBPM 4.0 - (Part I )
Getting Started with jBPM 4.0 (Part II)
Getting Started with jBPM 4.0 (Part III)
Bernd Ruecker published a jBPM 4 showcase:
Ein kleiner jBPM 4 Showcase (In German)
English translation
Andries Inze published a demo on the Spring integration:
Spring jBPM4 CR1 Demo
Friday, 10 July 2009
jBPM 4.0 Is Out !
jBPM 4 is ready. Now is an ideal time to try it out and increase your skills cause your boss is on holiday anyways. This is the opportunity you've been waiting for! Grab it!
http://downloads.sourceforge.net/jbpm/jbpm-4.0.zip
There is an extremely easy-to-set-up demo included. Step by step instructions to get started quickly.
jBPM 4 is a very important milestone for jBPM. We've put a lot of effort in lowering the treshold to get started and extending the scalability to the highest load scenarios.
http://downloads.sourceforge.net/jbpm/jbpm-4.0.zip
There is an extremely easy-to-set-up demo included. Step by step instructions to get started quickly.
jBPM 4 is a very important milestone for jBPM. We've put a lot of effort in lowering the treshold to get started and extending the scalability to the highest load scenarios.
- Embeddablity in any Java environment remains as it was
- Full continuous integration matrix in our own test labs
- BPMN process graphics
- Completely redesigned, clean and stable API, including an easy to use Query API.
- Out-of-the box experience with a demo that is extremely easy to set up, showing the new designer, API usgae, console and example processes
- Simplified and revised database schema
- Automatic installation scripts
- Performance improvements
- Configuration on a more abstract level leaving less chances of getting it wrong.
- Separation of runtime data and historical data
- Native support for integrating with the Spring framework.
- Improved documentation, including a separation between user guide for typical use cases and an developers guide tackling advanced topics.
- And much much more
Wednesday, 24 June 2009
Workflow Engines: Build Your Own Vs Use An Existing
Bernd Ruecker (Camunda, BPM Guide) posted a very interesting article about the choice between build a home grown workflow engine versus adopting an existing one.
Google translates it from german to english for you.
Original article in german.
Google translates it from german to english for you.
Original article in german.
Friday, 5 June 2009
jBPM 4.0.CR1 Released
Even though it's not the season, we've added an easter egg. Who can find it ?
Don't forget to check out the new group activity in the developers guide. It's a worthy replacement for the obsolete super-state.
Get it from sourceforge and keep those issues coming.
Special thanks for this release goes out to Joram. He just started last week on the team and saved our lives on his first release by finding and fixing a showstopper issue on the day of the release. Kudo's Joram ! Keep it up.
Don't forget to check out the new group activity in the developers guide. It's a worthy replacement for the obsolete super-state.
Get it from sourceforge and keep those issues coming.
Special thanks for this release goes out to Joram. He just started last week on the team and saved our lives on his first release by finding and fixing a showstopper issue on the day of the release. Kudo's Joram ! Keep it up.
Wednesday, 20 May 2009
Making A Callstack Persistable
Another one of David Chappell's great workflow writings: The Workflow Way. In this article, David explains the essence of workflow and BPM engines. Typically, the BPM vendors try too much to link their engines to the business value of managing processes properly, thereby obscuring what BPM engines actually do from a software standpoint.
BPM engines are different from plain programs like Java, C, Cobol etc in 2 key aspects:
1) The runtime state is persistable. At any point during execution of a process, the process execution can be interrupted and stored. Later the execution state can be retrieved from persistent storage and continued.
This is essentially different from plain computer programs where the callstack is not persistable. Blocking plain programs keeps thread resources and that doesn't survive reboots of the computer system.
The capability of interrupting an execution, storing it, retrieving it and resuming the execution can also be described as support for wait states.
2) Graphical representation. The second aspect where BPM processes differ from plain programs in languages is that BPM processes are aimed to be represented graphically with boxes and arrows.
David's article is an easy to read article for understanding these two aspects in more detail and learn what BPM and workflow engines really are made for.
BPM engines are different from plain programs like Java, C, Cobol etc in 2 key aspects:
1) The runtime state is persistable. At any point during execution of a process, the process execution can be interrupted and stored. Later the execution state can be retrieved from persistent storage and continued.
This is essentially different from plain computer programs where the callstack is not persistable. Blocking plain programs keeps thread resources and that doesn't survive reboots of the computer system.
The capability of interrupting an execution, storing it, retrieving it and resuming the execution can also be described as support for wait states.
2) Graphical representation. The second aspect where BPM processes differ from plain programs in languages is that BPM processes are aimed to be represented graphically with boxes and arrows.
David's article is an easy to read article for understanding these two aspects in more detail and learn what BPM and workflow engines really are made for.
Thursday, 14 May 2009
jBPM Community Day Slides
Finally all the slides of the jBPM Community Day are online:
Joram also publish a report on our community day.
Sneak Preview of jBPM 4 at JAX conference
View more presentations from tombaeyens.
jBPM Community Day: Full Scale STP With jBPM
View more presentations from tombaeyens.
Presentation jBPM Community Day 2009 - First steps with jBPM4
View more presentations from jorambarrez.
Joram also publish a report on our community day.
Tuesday, 12 May 2009
jBPM Community Day Report
Last week Friday, we had the second jBPM Community Day. With over 40 people again a well attended event. For those who missed it, here's an impression.
The first part of the day, the core developer met up to discuss the interesting low level tech details.
At 3pm, I kicked it off with an overview.
Then quickly people needed a break.
Then Eric Schabell, who joined JBoss just last week, introduced the talk about the SNS bank use case, where he worked before.
Maurice de Chateau from SNS Bank gave a good impression of how jBPM was used in practice. It turned out there sometime there are some practical problems between dream and reality.
Then Joram Barrez gave an awsome demo connecting jBPM with his cellphone over bluetooth to pay for a parking space.
Those who don't quit easily joined us for food.
And the die hards joined us for drinks :-)
The first part of the day, the core developer met up to discuss the interesting low level tech details.
At 3pm, I kicked it off with an overview.
Then quickly people needed a break.
Then Eric Schabell, who joined JBoss just last week, introduced the talk about the SNS bank use case, where he worked before.
Maurice de Chateau from SNS Bank gave a good impression of how jBPM was used in practice. It turned out there sometime there are some practical problems between dream and reality.
Then Joram Barrez gave an awsome demo connecting jBPM with his cellphone over bluetooth to pay for a parking space.
Those who don't quit easily joined us for food.
And the die hards joined us for drinks :-)
Wednesday, 22 April 2009
JAX jBPM 4 Sneak Preview Slides
I've posted the slides of my jBPM 4 Sneak Preview talk yesterday at the JAX conference. First part is the same as the BeJUG presentation from last month. But the second part contains some concrete new examples of how to use jBPM 4 and what it can do.
Thursday, 9 April 2009
jBPM Case Studies
Check out these case studies showing how jBPM is used in various industries like government, telecom, health care, biotech and as OEM. Thanks to the contributing companies: Enernoc, Advent conferencing, Booz Allen Hamilton, Crix International, SK Telecom, Vivat, Lexicon Genetics, Nuxeo and DST Health Solutions.
jBPM 4.0.0.Beta1 Released
jBPM 4.0.0.Beta 1 is out. Go get it here. We've added task management capabilities like candidates and swimlanes. More details in our JIRA.
Tuesday, 7 April 2009
Spring and jBPM
A session to look out for: "Spring integration in jBPM 4" by Andries Inze at next week's J-Spring event by NLJUG. The event is basically booked. But as people notify that their not coming, registration is activated again.
Thursday, 2 April 2009
jBPM 4 sneak preview at JAX Conference
I'll be presenting a jBPM 4 sneak preview at JAX 09, April 21st 10:00 - 11:15
Get ready for the next generation of software development. jBPM 4 will deliver BPM to the masses. This session will start by highlighting the typical pitfalls of BPM and workflow technologies. jBPM can plug straight into your application's architecture. Learn how developers can structure their code around a combination of domain model and business processes. A couple of example scenarios will show the powerful features of jBPM. Apart from the business use case, this presentation will also highlight jBPM's capability to covers a range of technical use cases like orchestrating asynchronous architectures.
Friday, 20 March 2009
jBPM Slides Of The BeJUG Event Yesterday
Yesterday, I gave a jBPM 4 introduction for the BeJUG. The slides are available on slideshare. Check out the other BeJUG events, there are some real nice ones to come.
jBPM 4 BeJUG Event March 20 2009
View more presentations from tombaeyens.
Tuesday, 17 March 2009
Good jBPM Documentation Articles
Just came across http://www.mastertheboss.com Fransesco Marchioni and Mark Spencer posted some nice jBPM articles. Especially the jBPM Best Practices article is worth a read.
Great work, guys!
Great work, guys!
Monday, 16 March 2009
BeJUG jBPM Event Now Thursday In Ghent
Don't miss out on the next BeJUG event now thursday. Take this opportunity to connect with the core jBPM community developers!
Wednesday, 11 March 2009
Tuning jBPM In A Cluster
Szymon Zeslawski has posted a great TSS article: Scalability and Performance of jBPM Workflow Engine in a JBoss Cluster.
That is indeed the spot that we're working hard to resolve in jBPM 4: better tuning defaults and that way try to postpone the need for custom tuning when scaling out.
Awsome !
The verdict is that jBPM is a very efficient workflow engine, it only requires turning the right knobs in order to get the most out of it.
That is indeed the spot that we're working hard to resolve in jBPM 4: better tuning defaults and that way try to postpone the need for custom tuning when scaling out.
By adding 3 servers and tweaking jBPM configuration, we were able to increase the throughput over 16 times in comparison to 1 server environment with default setup.
Awsome !
Tuesday, 10 March 2009
Next jBPM Community Day is May8th in Antwerp, Belgium
It will be hard to match the Dublin jBPM Community Day from last year. But we sure are going to give it a good try an Antwerp. Mark May 8th in your calendar, start to book your flights and get some rest upfront.
More details in this wiki page
More details in this wiki page
Subscribe to:
Posts (Atom)