Hi Fan Li,
it's great to get some feedback on this!
I'm sure we can fix your issues pretty quickly. Would you mind
raising a jira issue on this ? That way I won't forget about
cheers,
Rob
First of all, my apologies for spamming your e-mail account, but I am
looking for help from any ActiveMQ developer who can help me answer a
couple of questions.
I am currently working on a Project that would help our company to
switch our existing messaging applications to used ActiveMQ instead
of our own messaging system that is based on Rendezvous. My project
has to do with creating a bridge that enables the communication of
applications written using our messaging system to those applications
written using ActiveMQ. After looking at ActiveMQ source code, I
discovered a package, org.activemq.network.jms in the activemq-core/
src/main/java directory, and it seems to provide the bridge
functionalities I am looking for. However, when I was trying to test
out the code in this package I run into a problem.
The init() method in JmsTopicConnector class calls the methods
initializeForeignTopicConnection() and
initializeLocalTopicConnection() to set the appropriate
ConnectionFactory and Connection by look them up from the
JndiTemplate object of the class. The JndiTemplate object does object
lookup using a Context object that is created by the implementation
of InitialContextFactroy associated with "
java.naming.factory.initial". This is a problem because different JMS
implementations have different InitialContextFactory classes,
therefore it is not possible for one implementation of
InitialContextFactory to create Context object that is capable of
looking up objects implemented by two different JMS providers. Unless
the association between " java.naming.factory.initial" and the
InitialContextFactory can be changed between the invocation of
initializeForeignTopicConnection() and
initializeLocalTopicConnection(), which would require code change in
the JmsTopicConnector class. Does anyone know a way to work around
this problem?
Also, I need a bit of clarification on the description for the
JmsMesageConvertor interface. The Java doc for the convert method of
this interface says that the method is used to "Convert a foreign JMS
Message to a native ActiveMQ Message", but should it also be used to
perform the reverse conversion, which is to convert from a native
ActiveMQ Message to a foreign JMS Message or is there a different
interface that takes care of it?
Thank you
Fan Li