I've created a simple test scenario with two classes (separate camel
contexts) and a few very simple routes for the purposes of testing the "vm"
component. The routes are as follows:
Class1: tcp (via mina) -> vm:test
Class2: vm:test -> file:outbox
Upon running the two classes and sending a message over, I get confirmation
from the first class that the TCP message has been received and sent to the
vm queue. The second class however, never receives the message. The camel
documentation says the following:
/[...] VM supports communication across CamelContext instances - so you can
use this mechanism to communicate across web applications (provided that
camel-core.jar is on the system/boot classpath)./
I also found a post from Claus saying:
/Its a cheap way of sharing between multiple WAR files with the cost of
having camel-core in the bootstrap classloader. /
OK. So I must admit that my knowledge of class loading and how that works
is a bit limited, however I believe I've done my due diligence and wrestled
with this for bit and I simply cannot get it to work. I have all of the
jars that come with the camel distribution specified in the "Java Build
Path" of my project in Eclipse. In Eclipse there is a "Run Configurations"
dialog. Within that dialog there is a "Classpath" tab. Within that tab
there are two nodes: "Bootstrap Entries" and "User Entries". I have tried
adding multiple jars (including the camel-core jar as referenced above) to
the "Bootstrap Entries" node. Unfortunately, every time I am greeted with
an exception of some kind. What am I missing? Is there a simple guide on
how to get this vm component working?
View this message in context: http://camel.465427.n5.nabble.com/How-exactly-to-get-the-vm-component-to-work-tp5730678.html
Sent from the Camel - Users mailing list archive at Nabble.com.