On 1 Mar 2006, at 18:16, [EMAIL PROTECTED] wrote:
Unfortunately, activecluster-4.0-M4 is dependent on activemq-core,
so it
can't be used easily with another JMS provider.
Depending on classes inside activemq-core.jar != not working with
another JMS provider :)
The DefaultClusterFactory class depends on
org.apache.activemq.util.IdGenerator. That seems like a simple
dependency
to remove (maybe use Jakarta Commons Id package?).
Maybe we should just copy that one class across.
Not so obvious is an issue where the DestinationMarshaller
interface is
required to create a Destination from a String. Creating a
destination for
most JMS vendors requires access to the Session object (e.g.
Session.createTopic(String name)), which is encapsulated in the
DefaultClusterFactory class. How would I create a destination in
my own
marshaller implementation, with no access to the Session object? The
DefaultDestinationMarshaller implementation creates a new
ActiveMQTopic
object, which obviously only works in ActiveMQ....
We could just use a dummy Destination object for now that gets
serialised?
So, if I tweak the DefaultClusterFactory class, changing the protected
createCluster method to public, then I can easily write my own
DestinationMarshaller, and the code is truly independent of ActiveMQ.
Is anyone else interested in using ActiveCluster with a JMS
provider other
than ActiveMQ?
Sure - supporting any JMS is a good thing.
Any plans to make ActiveCluster a top-level Geronimo
project, and not just a subcomponent of ActiveMQ?
We'll see what happens with Geronimo / WADI / ActiveMQ. It might make
sense as a module in Geronimo or in ActiveMQ. Am not sure if its big
enough to be a top level project
James
-------
http://radio.weblogs.com/0112098/