I'm hooking up a imaging server, a legacy workflow system, a host and some other systems with exactly NO human interference. I guess thats what you would call a EAI system.
Works for me.
I would rather say it as an oversimplification of EAI.
To know more abt EAI,visit
By the way,has anybody else used workflow for EAI??
ok, it might have been an oversimplification, but...
jBPM is basically a state machine. Everything else is up to you. So all the bells and whistles of a full fledged EAI system are missing, you will have to build all the abstractions, data exchanges, etc. yourself.
What I described in short words was an integration of various systems, with various data formats that know nothing of each other and have to interact (this includes all requirements in your link).
jBPM is a very capable tool to build such a system with. It is however not an EAI system out-of-the-box.
But maybe the jBPM Team should answer 'political' questions like these :-)
i couldn't have said it better :)
Thanks guys for the response!!!
Now i have a very interesting question for you.
If iam going to use Jbpm for EAI[in other words,clients of our application will make a synchronous web service request],do i really need to use database??
As request-response follows a single cycle and its synchronous,i dont think we need to persist process definition and process instances.
i can pass the process definition/process instance objects around for the same request as i have the sdtandard context objects available??
Also task related data persistance is ruled out as my application is fully automated.
So ideally do i really need a database???
If you agree with my points above,than dont you think that database persistance is not needed for any synchronous web app/enterprise apps which uses jbpm??
Ignore for a moment the fact that any web app/enterprise app needs the process instance execution data for data warehouseing OR Business intelligence tools.
If you further disregard that orchestrating (web) services almost always implies some form of latency, the answer is yes.
However, even for synchronous interactions, scalability principles might lead you to save your process instances while performing time-consuming operations to minimize resource usage, and restore them later.
In any case, jBPM provides support for the in-memory scenario.
When I attended a JBoss jBPM presentation about a year ago, the presenter told me that the next step for jBPM is to build an EAI server on top of it. I check the website once in a while to see if there is any new development in this area but I haven't seen anything yet. Does the JBoss jBPM team still have plans to build an EAI server (such as WebSphere Business Integration Server or InterChange server) on top of jBPM? There is no good open source integration server out there. jBPM would be the best candidate probably. I just want to know if you still have such plans.