Difference between camel-jbpm and jboss jbpm? - apache-camel

What is the difference between Apache camel-jbpm and jboss jbpm ?
Since Apache camel(2.16.3) is having one component as camel-jbpm.
I am confused which one I should use ? I am integrating with karaf. please suggest.

JBoss BPM (business process - a.k.a human workflow) is a project you can find and read more about here:
http://www.jbpm.org/
Apache Camel is an integration library that allows to integrate with a lot of different system. Doing so by using Camel components. One of these components is camel-jbpm that makes it possible/easier to use JBPM from Camel users.
http://camel.apache.org/jbpm
So if you have an existing BPM system and need to integrate with that from a Camel application or Java application, then using the camel-jpmn can make that (much) easier.

Related

Migration from Mule to Apache Camel

I am trying to explore is there any tools or any document is available in order to do the Migration from Mule into Apache camel.
please share if anything is available.
Thanks
Arun K
After a quick Internet search I suspect the answer is no. Probably their models are two different. You will need to rewrite from scratch the integrations. Note that Camel.appears to favor a Java DSL approach while Mule uses an XML DSL to configure flows.
However if you have a significant number of integrations in Camel XML DSL it might make sense to create a translator at least to get some base translation that will need to be completed manually.

How to integrate osgi-blueprint and apache camel, Any sample code?

I am setting osgi-bluprint and apache camle project and I am wondering how we can integrate this two compoenent.
There are plenty of examples out of the box with Apache Camel.
See the OSGi / blueprint examples at:
https://github.com/apache/camel/tree/camel-2.x/examples#welcome-to-the-apache-camel-examples
This could be a good place to start.
http://camel.apache.org/using-osgi-blueprint-with-camel.html
It is a very common pattern to use OSGi-blueprint and Camel (with OSGi runtimes such as Apache Karaf) and there are plenty of examples out there.

How to install/ where to find jboss/fuse apache camel tools stand alone

i want to install the apache camel tools for eclipse: http://tools.jboss.org/features/apachecamel.html
But how to install/ where to find camel tools? I tried to install JBoss Tools from eclipse marketplace but didn't find camel on selection screen. (don't want all tools)
I also tried the update site mentioned here http://tools.jboss.org/blog/2014-04-14-JBTIS-4.html but the only "camel" thing is "JBoss Fuse Camel Editor Feature" is this it?
Besides the visualizing of routes i want to see jmx stuff that is exposed by my camel app.
The blog entry from Paul Leacu provides the correct information. There are currently 3 features which are named like "JBoss Fuse ...".
The Camel Editor feature provides the editor for designing your Camel Routes and to launch them on your local machine.
Then there is the Fuse Server Adapter feature which provides some server adapters for starting / stopping / installing Apache ServiceMix, Apache Karaf and JBoss Fuse servers.
Finally there is the Fuse Runtime feature which provides the JMX stuff you are looking for and the Fabric related functionality.
I made a short install guide on how to install JBoss Fuse Tooling without JBDS and/or the integration stack. You can find the guide here.

Active - Passive Fuse FTP interfaces using Idempotent repository

We have a clustered environment where same camel ftp endpoint is installed on multiple fuse instances. I want message(file) to be consumed by only one fuse instance. I am planning to achieve this by implementing IdempotentRepository interface with database persistence. Want to make sure that this approach will work or there is a better way to do it?
If you don't want to depend on a database for doing this you could try with Hazelcast. Hazelcast is a distributed data cache that can be used as a idempotent repository without external dependencies. Also, Apache Camel provides a class for doing this. There is a nice tutorial explaining how to do it: Hazelcast Idempotent Repository Tutorial

serviceMix 4.4 does not support ODE any longer, what is the alternative way to do orchestration?

I am new to serviceMix, I downloaded serviceMix 4.5.1 a couple of days ago.
When I tried to install ode in serviceMix using the command
features:install ode
It tells me this:
Error executing command: No feature named 'ode' with version '0.0.0' available
I googled/baidued mass of webs, I got a bad news that:
"Fuse ESB 4.4 does not support Apache ODE. The latest version of ODE is not compatible with Fuse ESB."
which comes from
http://fusesource.com/forums/thread.jspa?messageID=11209
Fuse ESB - ODE installation
So if serviceMix 4.4 does not support ODE any longer, what is the alternative way to do the web service orchestration in serviceMix? I have tried use camel to do this work,but that's not easy.
How about "bpel-g"?(http://code.google.com/p/bpel-g/) is it a good choice? or any other choice?
Any help will be really appreciated.
I like Activiti for processes and orchestration.
Never run it inside Karaf/SMX/Fuse ESB but it should be possible, if not using this instruction.
It also has a nice web explorer for human tasks etc. if you need it and BPMN modeller for rapid desing and visualization
I would recommend to try bpel-g. A colleague and me have been doing some BPEL conformance benchmarking lately (fyi: the benchmarking tool is available at github) and bpel-g turned out have the highest degree of support for the BPEL spec., along with the older ActiveBPEL engine from which bpel-g is a fork. ODE ranked third place.
Another nice feature of bpel-g is that it is indeed actively maintained. I don't know how well it integrates into the infrastructure of Fuse ESB, but since it's deployable as a war, this shouldn't be much of a problem.
UPDATE: Just had a look up: bpel-g seems to integrate with camel and provides a custom handler to invoke camel components. So, basically, the solution outlined in Petters answer also applies to bpel-g and, in contrast to Activiti, it has a message correlation framework. Finally, the barrier to using it should be smaller, as you already know BPEL. As a consequence, bpel-g might be a more suitable solution here.

Resources