activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rob Davies <>
Subject Re: help needed regarding to package
Date Wed, 01 Feb 2006 13:34:48 GMT
Fan Li,

you can explicitly set the local ConnectionFactory on the  
JmsTopicConnector/JmsQueueConnector - and use the JndiTemplate for  
initializing the foreign JMS provider.
The JmsMessageConvertor doc is misleading  in it's description - for  
inbound messages it will expect foreign JMS -> ActiveMQ and outbound  
ActiveMQ -> JMS.
The JMS specification states that a JMS message provider should be  
able to convert a foreign JMS Message if one is used - so this  
interface is only there if special marshaling is required.



On 1 Feb 2006, at 12:55, Rob Davies wrote:

> 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, 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

View raw message