You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by thaibox1 <th...@yahoo.com> on 2007/09/20 21:07:38 UTC

ActiveMQ JMS Bridge to Websphere MQ

I'm using MQ series 5.2 (I know it's old, but it's supposedly JMS compliant). 
We're looking to move off Websphere MQ and I'm evaluating ActiveMQ, but
we're still going to need to hook it up to Websphere MQ since most of our
remote clients use that app for remote messaging.  The problem I'm facing is
that I'm struggling to configure the JMS bridge to successfully connect to
Websphere MQ. Here is the activemq.xml file that I'm using:

<beans>

  <!-- Allows us to use system properties as variables in this configuration
file -->
  <bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
  
  <broker xmlns="http://activemq.org/config/1.0"
          brokerName="ALERTQ"
          useJmx="true" 
          persistent="true">
    
    <!--  Use the following to set the broker memory limit -->
    <memoryManager>  
        <usageManager id="memory-manager" limit="256 MB"/>
    </memoryManager>
    
    <destinations>
       <queue physicalName="US.TO.THEM" />
       <queue physicalName="THEM.TO.US" />
       <topic physicalName="ALERT.TOPIC" />
    </destinations>
    
    <transportConnectors>
       <transportConnector name="openwire" uri="tcp://mqserver:31313" />
                           <!-- discoveryUri="multicast://default" -->
    </transportConnectors>
    
    <networkConnectors>
      <!-- by default just auto discover the other brokers -->
      <!-- <networkConnector name="default-nc" uri="multicast://default"/>
-->
    </networkConnectors>
    
    <!-- Use the following to configure how ActiveMQ is exposed in JMX -->
    <managementContext>
       <managementContext connectorPort="5099" 
                          jmxDomainName="org.apache.activemq"/>
    </managementContext>

	<jmsBridgeConnectors>
		<jmsQueueConnector outboundQueueConnectionFactory="#remoteFactory">
			<inboundQueueBridges>
				<inboundQueueBridge inboundQueueName="THEM.TO.US"
				                    localQueueName="THEM.TO.US"/>
			</inboundQueueBridges>
			<outboundQueueBridges>
				<outboundQueueBridge outboundQueueName="US.TO.THEM"
				                     localQueueName="US.TO.THEM"/>
			</outboundQueueBridges>
		</jmsQueueConnector>
	</jmsBridgeConnectors>
	
    <!-- In ActiveMQ 4, you can setup destination policies -->  
    <destinationPolicy>
      <policyMap><policyEntries>
          <policyEntry topic="ALERT.>">
            <dispatchPolicy>
              <strictOrderDispatchPolicy />
            </dispatchPolicy>
            <subscriptionRecoveryPolicy>
              <lastImageSubscriptionRecoveryPolicy />
            </subscriptionRecoveryPolicy>
          </policyEntry>
      </policyEntries></policyMap>
    </destinationPolicy>
  
  
    <persistenceAdapter>
        <journaledJDBC journalLogFiles="5"
dataDirectory="${activemq.base}/activemq-data"/>
    </persistenceAdapter>
    
  </broker>

  <bean id="remoteFactory" class="com.ibm.mq.jms.MQQueueConnectionFactory">
	<property name="transportType" value="1"/>
	<property name="hostName" value="remoteIP"/>
	<property name="port" value="1444"/>
	<property name="queueManager" value="ALERTQ"/>
	<property name="channel" value="US.TO.THEM"/>
  </bean>
  
When I start it up, I get:

./activemq
ACTIVEMQ_HOME: /u/pkgs/activemq/4.1.1
ACTIVEMQ_BASE: /u/home/admin/work/activemq/build
Loading message broker from: xbean:activemq.xml
INFO  CollectionFactory              - JDK 1.4+ collections available
INFO  XBeanXmlBeanDefinitionReader   - Loading XML bean definitions from
class path resource [activemq.xml]
INFO  ClassPathXmlApplicationContext - Bean factory for application context
[org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCode=14247437]:
org.springframework.beans.factory.support.DefaultListableBeanFactory
defining beans
[org.springframework.beans.factory.config.PropertyPlaceholderConfigurer,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
root of BeanFactory hierarchy
INFO  ClassPathXmlApplicationContext - 3 beans defined in application
context
[org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCode=14247437]
INFO  ClassPathXmlApplicationContext - Unable to locate MessageSource with
name 'messageSource': using default
[org.springframework.context.support.DelegatingMessageSource@9ffe3f]
INFO  ClassPathXmlApplicationContext - Unable to locate
ApplicationEventMulticaster with name 'applicationEventMulticaster': using
default
[org.springframework.context.event.SimpleApplicationEventMulticaster@18352d8]
INFO  DefaultListableBeanFactory     - Pre-instantiating singletons in
factory
[org.springframework.beans.factory.support.DefaultListableBeanFactory
defining beans
[org.springframework.beans.factory.config.PropertyPlaceholderConfigurer,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
root of BeanFactory hierarchy]
INFO  BrokerService                  - ActiveMQ 4.1.1 JMS Message Broker
(ALERTQ) is starting
INFO  BrokerService                  - For help or more information please
see: http://incubator.apache.org/activemq/
INFO  JDBCPersistenceAdapter         - Database driver recognized:
[apache_derby_embedded_jdbc_driver]
INFO  DefaultDatabaseLocker          - Attempting to acquire the exclusive
lock to become the Master broker
INFO  DefaultDatabaseLocker          - Becoming the master on dataSource:
org.apache.derby.jdbc.EmbeddedDataSource@8a1977
INFO  JournalPersistenceAdapter      - Journal Recovery Started from: Active
Journal: using 5 x 20.0 Megs at:
/etrade/home/mrodrig9/work/activemq/build/activemq-data/journal
INFO  JournalPersistenceAdapter      - Journal Recovered: 0 message(s) in
transactions recovered.
INFO  TransportServerThreadSupport   - Listening for connections at:
tcp://someserver:31313
INFO  TransportConnector             - Connector openwire Started
INFO  ManagementContext              - JMX consoles can connect to
service:jmx:rmi:///jndi/rmi://localhost:5099/jmxrmi
Unable to load message catalog - mqji
ERROR JmsQueueConnector              - Failed to initialize the JMSConnector
javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for
'10.52.92.78:ALERTQ'
        at
com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:546)
        at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1137)
        at com.ibm.mq.jms.MQConnection.createQMNonXA(MQConnection.java:799)
        at
com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:255)
        at
com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
        at
com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection(MQQueueConnectionFactory.java:142)
        at
org.apache.activemq.network.jms.JmsQueueConnector.initializeForeignQueueConnection(JmsQueueConnector.java:216)
        at
org.apache.activemq.network.jms.JmsQueueConnector.init(JmsQueueConnector.java:54)
        at
org.apache.activemq.network.jms.JmsConnector.start(JmsConnector.java:114)
        at
org.apache.activemq.broker.BrokerService.startAllConnectors(BrokerService.java:1494)
        at
org.apache.activemq.broker.BrokerService.start(BrokerService.java:402)
        at
org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:47)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1062)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:420)
        at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
        at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
        at
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:290)
        at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:348)
        at
org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:161)
        at
org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:51)
        at
org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:41)
        at
org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:57)
        at
org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:82)
        at
org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:47)
        at
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:50)
        at
org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:82)
        at
org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:50)
        at
org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:46)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.apache.activemq.console.Main.runTaskClass(Main.java:202)
        at org.apache.activemq.console.Main.main(Main.java:91)
INFO  JmsConnector                   - JMS Connector Connector:0 Started
INFO  BrokerService                  - ActiveMQ JMS Message Broker (ALERTQ,
ID:dev6m3-53031-1190315038649-1:0) started
ERROR TransportConnector             - Could not accept connection from
/remoteIP:52978: java.io.IOException: Wire format negociation timeout: peer
did not send his wire format.
java.io.IOException: Wire format negociation timeout: peer did not send his
wire format.
        at
org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:88)
        at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:47)
        at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1138)
        at
org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:805)
        at
org.apache.activemq.broker.TransportConnection.start(TransportConnection.java:885)
        at
org.apache.activemq.broker.TransportConnector$1.onAccept(TransportConnector.java:148)
        at
org.apache.activemq.transport.tcp.TcpTransportServer.run(TcpTransportServer.java:167)
        at java.lang.Thread.run(Thread.java:595)

So here we see that activemq tries to connect to websphere MQ and fails
miserably and then every so often, WebsphereMQ tries to connect to Activemq
and falls down as well.

Any help you can offer would be greatly appreciated.
-- 
View this message in context: http://www.nabble.com/ActiveMQ-JMS-Bridge-to-Websphere-MQ-tf4489485s2354.html#a12803797
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: ActiveMQ JMS Bridge to Websphere MQ

Posted by thaibox1 <th...@yahoo.com>.
Well, I named both Brokers the same, that's why the message is the way it is. 
At this point I'm at a total loss as to what it can be.  I followed all the
documentation I could find to the tee and this doesn't work.  Any help at
all would be well appreciated.  Thanks for your response though, I did try
some different things  but to no avail.



Daryl Richter-3 wrote:
> 
> On Sep 24, 2007, at 2:29 PM, thaibox1 wrote:
> 
>>
>> Does anyone require anything more from me to help diagnose this issue?
>>
>> Thanks...
> 
> Well, this is just a stab in the dark here, but one thing that looks  
> a bit funny to me is that your ActiveMQ server is named ALERTQ, yet  
> the error message you are getting says " MQJMS2005: failed to create  
> MQQueueManager for '10.52.92.78:ALERTQ'
> 
> I doesn't seem quite right to me that you would be trying to create  
> an "MQQueueManager" for an ActiveMQ server.  Shouldn't that be your  
> Websphere MQ?
> 
> I am sure this is totally off-base, sorry.
> 
> I do have ActiveMQ successfully bridged to SonicMQ in production and  
> it works fine (except for being unable to reconnect when Sonic goes  
> away).  Admittedly, I am using a 5.0-SNAPSHOT build and not 4.1.1,  
> though.
> 
> 
>>
>>
>>
>> thaibox1 wrote:
>>>
>>> I'm using MQ series 5.2 (I know it's old, but it's supposedly JMS
>>> compliant).  We're looking to move off Websphere MQ and I'm  
>>> evaluating
>>> ActiveMQ, but we're still going to need to hook it up to Websphere MQ
>>> since most of our remote clients use that app for remote  
>>> messaging.  The
>>> problem I'm facing is that I'm struggling to configure the JMS  
>>> bridge to
>>> successfully connect to Websphere MQ. Here is the activemq.xml  
>>> file that
>>> I'm using:
>>>
>>> <beans>
>>>
>>>   <!-- Allows us to use system properties as variables in this
>>> configuration file -->
>>>   <bean
>>> class="org.springframework.beans.factory.config.PropertyPlaceholderCo 
>>> nfigurer"/>
>>>
>>>   <broker xmlns="http://activemq.org/config/1.0"
>>>           brokerName="ALERTQ"
>>>           useJmx="true"
>>>           persistent="true">
>>>
>>>     <!--  Use the following to set the broker memory limit -->
>>>     <memoryManager>
>>>         <usageManager id="memory-manager" limit="256 MB"/>
>>>     </memoryManager>
>>>
>>>     <destinations>
>>>        <queue physicalName="US.TO.THEM" />
>>>        <queue physicalName="THEM.TO.US" />
>>>        <topic physicalName="ALERT.TOPIC" />
>>>     </destinations>
>>>
>>>     <transportConnectors>
>>>        <transportConnector name="openwire" uri="tcp://mqserver: 
>>> 31313" />
>>>                            <!-- discoveryUri="multicast://default"  
>>> -->
>>>     </transportConnectors>
>>>
>>>     <networkConnectors>
>>>       <!-- by default just auto discover the other brokers -->
>>>       <!-- <networkConnector name="default-nc" uri="multicast:// 
>>> default"/>
>>> -->
>>>     </networkConnectors>
>>>
>>>     <!-- Use the following to configure how ActiveMQ is exposed in  
>>> JMX -->
>>>     <managementContext>
>>>        <managementContext connectorPort="5099"
>>>                           jmxDomainName="org.apache.activemq"/>
>>>     </managementContext>
>>>
>>> 	<jmsBridgeConnectors>
>>> 		<jmsQueueConnector outboundQueueConnectionFactory="#remoteFactory">
>>> 			<inboundQueueBridges>
>>> 				<inboundQueueBridge inboundQueueName="THEM.TO.US"
>>> 				                    localQueueName="THEM.TO.US"/>
>>> 			</inboundQueueBridges>
>>> 			<outboundQueueBridges>
>>> 				<outboundQueueBridge outboundQueueName="US.TO.THEM"
>>> 				                     localQueueName="US.TO.THEM"/>
>>> 			</outboundQueueBridges>
>>> 		</jmsQueueConnector>
>>> 	</jmsBridgeConnectors>
>>> 	
>>>     <!-- In ActiveMQ 4, you can setup destination policies -->
>>>     <destinationPolicy>
>>>       <policyMap><policyEntries>
>>>           <policyEntry topic="ALERT.>">
>>>             <dispatchPolicy>
>>>               <strictOrderDispatchPolicy />
>>>             </dispatchPolicy>
>>>             <subscriptionRecoveryPolicy>
>>>               <lastImageSubscriptionRecoveryPolicy />
>>>             </subscriptionRecoveryPolicy>
>>>           </policyEntry>
>>>       </policyEntries></policyMap>
>>>     </destinationPolicy>
>>>
>>>
>>>     <persistenceAdapter>
>>>         <journaledJDBC journalLogFiles="5"
>>> dataDirectory="${activemq.base}/activemq-data"/>
>>>     </persistenceAdapter>
>>>
>>>   </broker>
>>>
>>>   <bean id="remoteFactory"
>>> class="com.ibm.mq.jms.MQQueueConnectionFactory">
>>> 	<property name="transportType" value="1"/>
>>> 	<property name="hostName" value="remoteIP"/>
>>> 	<property name="port" value="1444"/>
>>> 	<property name="queueManager" value="ALERTQ"/>
>>> 	<property name="channel" value="US.TO.THEM"/>
>>>   </bean>
>>>
>>> When I start it up, I get:
>>>
>>> ./activemq
>>> ACTIVEMQ_HOME: /u/pkgs/activemq/4.1.1
>>> ACTIVEMQ_BASE: /u/home/admin/work/activemq/build
>>> Loading message broker from: xbean:activemq.xml
>>> INFO  CollectionFactory              - JDK 1.4+ collections available
>>> INFO  XBeanXmlBeanDefinitionReader   - Loading XML bean  
>>> definitions from
>>> class path resource [activemq.xml]
>>> INFO  ClassPathXmlApplicationContext - Bean factory for application
>>> context
>>> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashC 
>>> ode=14247437]:
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory
>>> defining beans
>>> [org.springframework.beans.factory.config.PropertyPlaceholderConfigur 
>>> er,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
>>> root of BeanFactory hierarchy
>>> INFO  ClassPathXmlApplicationContext - 3 beans defined in application
>>> context
>>> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashC 
>>> ode=14247437]
>>> INFO  ClassPathXmlApplicationContext - Unable to locate  
>>> MessageSource with
>>> name 'messageSource': using default
>>> [org.springframework.context.support.DelegatingMessageSource@9ffe3f]
>>> INFO  ClassPathXmlApplicationContext - Unable to locate
>>> ApplicationEventMulticaster with name  
>>> 'applicationEventMulticaster': using
>>> default
>>> [org.springframework.context.event.SimpleApplicationEventMulticaster@ 
>>> 18352d8]
>>> INFO  DefaultListableBeanFactory     - Pre-instantiating  
>>> singletons in
>>> factory
>>> [org.springframework.beans.factory.support.DefaultListableBeanFactory
>>> defining beans
>>> [org.springframework.beans.factory.config.PropertyPlaceholderConfigur 
>>> er,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
>>> root of BeanFactory hierarchy]
>>> INFO  BrokerService                  - ActiveMQ 4.1.1 JMS Message  
>>> Broker
>>> (ALERTQ) is starting
>>> INFO  BrokerService                  - For help or more  
>>> information please
>>> see: http://incubator.apache.org/activemq/
>>> INFO  JDBCPersistenceAdapter         - Database driver recognized:
>>> [apache_derby_embedded_jdbc_driver]
>>> INFO  DefaultDatabaseLocker          - Attempting to acquire the  
>>> exclusive
>>> lock to become the Master broker
>>> INFO  DefaultDatabaseLocker          - Becoming the master on  
>>> dataSource:
>>> org.apache.derby.jdbc.EmbeddedDataSource@8a1977
>>> INFO  JournalPersistenceAdapter      - Journal Recovery Started from:
>>> Active Journal: using 5 x 20.0 Megs at:
>>> /etrade/home/mrodrig9/work/activemq/build/activemq-data/journal
>>> INFO  JournalPersistenceAdapter      - Journal Recovered: 0 message 
>>> (s) in
>>> transactions recovered.
>>> INFO  TransportServerThreadSupport   - Listening for connections at:
>>> tcp://someserver:31313
>>> INFO  TransportConnector             - Connector openwire Started
>>> INFO  ManagementContext              - JMX consoles can connect to
>>> service:jmx:rmi:///jndi/rmi://localhost:5099/jmxrmi
>>> Unable to load message catalog - mqji
>>> ERROR JmsQueueConnector              - Failed to initialize the
>>> JMSConnector
>>> javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager  
>>> for
>>> '10.52.92.78:ALERTQ'
>>>         at
>>> com.ibm.mq.jms.services.ConfigEnvironment.newException 
>>> (ConfigEnvironment.java:546)
>>>         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java: 
>>> 1137)
>>>         at
>>> com.ibm.mq.jms.MQConnection.createQMNonXA(MQConnection.java:799)
>>>         at
>>> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:255)
>>>         at
>>> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
>>>         at
>>> com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection 
>>> (MQQueueConnectionFactory.java:142)
>>>         at
>>> org.apache.activemq.network.jms.JmsQueueConnector.initializeForeignQu 
>>> eueConnection(JmsQueueConnector.java:216)
>>>         at
>>> org.apache.activemq.network.jms.JmsQueueConnector.init 
>>> (JmsQueueConnector.java:54)
>>>         at
>>> org.apache.activemq.network.jms.JmsConnector.start 
>>> (JmsConnector.java:114)
>>>         at
>>> org.apache.activemq.broker.BrokerService.startAllConnectors 
>>> (BrokerService.java:1494)
>>>         at
>>> org.apache.activemq.broker.BrokerService.start(BrokerService.java: 
>>> 402)
>>>         at
>>> org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet 
>>> (XBeanBrokerService.java:47)
>>>         at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBean 
>>> Factory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java: 
>>> 1062)
>>>         at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBean 
>>> Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
>>>         at
>>> org.springframework.beans.factory.support.AbstractAutowireCapableBean 
>>> Factory.createBean(AbstractAutowireCapableBeanFactory.java:420)
>>>         at
>>> org.springframework.beans.factory.support.AbstractBeanFactory 
>>> $1.getObject(AbstractBeanFactory.java:245)
>>>         at
>>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistr 
>>> y.getSingleton(DefaultSingletonBeanRegistry.java:141)
>>>         at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean 
>>> (AbstractBeanFactory.java:242)
>>>         at
>>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean 
>>> (AbstractBeanFactory.java:156)
>>>         at
>>> org.springframework.beans.factory.support.DefaultListableBeanFactory. 
>>> preInstantiateSingletons(DefaultListableBeanFactory.java:290)
>>>         at
>>> org.springframework.context.support.AbstractApplicationContext.refres 
>>> h(AbstractApplicationContext.java:348)
>>>         at
>>> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init> 
>>> (ClassPathXmlApplicationContext.java:161)
>>>         at
>>> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init> 
>>> (ClassPathXmlApplicationContext.java:51)
>>>         at
>>> org.apache.activemq.xbean.XBeanBrokerFactory.createBroker 
>>> (XBeanBrokerFactory.java:41)
>>>         at
>>> org.apache.activemq.broker.BrokerFactory.createBroker 
>>> (BrokerFactory.java:57)
>>>         at
>>> org.apache.activemq.console.command.StartCommand.startBroker 
>>> (StartCommand.java:82)
>>>         at
>>> org.apache.activemq.console.command.StartCommand.runTask 
>>> (StartCommand.java:47)
>>>         at
>>> org.apache.activemq.console.command.AbstractCommand.execute 
>>> (AbstractCommand.java:50)
>>>         at
>>> org.apache.activemq.console.command.ShellCommand.runTask 
>>> (ShellCommand.java:82)
>>>         at
>>> org.apache.activemq.console.command.AbstractCommand.execute 
>>> (AbstractCommand.java:50)
>>>         at
>>> org.apache.activemq.console.command.ShellCommand.main 
>>> (ShellCommand.java:46)
>>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native  
>>> Method)
>>>         at
>>> sun.reflect.NativeMethodAccessorImpl.invoke 
>>> (NativeMethodAccessorImpl.java:39)
>>>         at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke 
>>> (DelegatingMethodAccessorImpl.java:25)
>>>         at java.lang.reflect.Method.invoke(Method.java:585)
>>>         at org.apache.activemq.console.Main.runTaskClass(Main.java: 
>>> 202)
>>>         at org.apache.activemq.console.Main.main(Main.java:91)
>>> INFO  JmsConnector                   - JMS Connector Connector:0  
>>> Started
>>> INFO  BrokerService                  - ActiveMQ JMS Message Broker
>>> (ALERTQ, ID:dev6m3-53031-1190315038649-1:0) started
>>> ERROR TransportConnector             - Could not accept connection  
>>> from
>>> /remoteIP:52978: java.io.IOException: Wire format negociation  
>>> timeout:
>>> peer did not send his wire format.
>>> java.io.IOException: Wire format negociation timeout: peer did not  
>>> send
>>> his wire format.
>>>         at
>>> org.apache.activemq.transport.WireFormatNegotiator.oneway 
>>> (WireFormatNegotiator.java:88)
>>>         at
>>> org.apache.activemq.transport.MutexTransport.oneway 
>>> (MutexTransport.java:47)
>>>         at
>>> org.apache.activemq.broker.TransportConnection.dispatch 
>>> (TransportConnection.java:1138)
>>>         at
>>> org.apache.activemq.broker.TransportConnection.processDispatch 
>>> (TransportConnection.java:805)
>>>         at
>>> org.apache.activemq.broker.TransportConnection.start 
>>> (TransportConnection.java:885)
>>>         at
>>> org.apache.activemq.broker.TransportConnector$1.onAccept 
>>> (TransportConnector.java:148)
>>>         at
>>> org.apache.activemq.transport.tcp.TcpTransportServer.run 
>>> (TcpTransportServer.java:167)
>>>         at java.lang.Thread.run(Thread.java:595)
>>>
>>> So here we see that activemq tries to connect to websphere MQ and  
>>> fails
>>> miserably and then every so often, WebsphereMQ tries to connect to
>>> Activemq and falls down as well.
>>>
>>> Any help you can offer would be greatly appreciated.
>>>
>>
>> -- 
>> View this message in context: http://www.nabble.com/ActiveMQ-JMS- 
>> Bridge-to-Websphere-MQ-tf4489485s2354.html#a12865475
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
> 
> -- 
> Daryl
> http://itsallsemantics.com
> 
> "2 + 2 = 5, for sufficiently large values of 2."
>      -- Ron Jeffries
> 
> 
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/ActiveMQ-JMS-Bridge-to-Websphere-MQ-tf4489485s2354.html#a12906683
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: ActiveMQ JMS Bridge to Websphere MQ

Posted by Daryl Richter <ng...@comcast.net>.
On Sep 24, 2007, at 2:29 PM, thaibox1 wrote:

>
> Does anyone require anything more from me to help diagnose this issue?
>
> Thanks...

Well, this is just a stab in the dark here, but one thing that looks  
a bit funny to me is that your ActiveMQ server is named ALERTQ, yet  
the error message you are getting says " MQJMS2005: failed to create  
MQQueueManager for '10.52.92.78:ALERTQ'

I doesn't seem quite right to me that you would be trying to create  
an "MQQueueManager" for an ActiveMQ server.  Shouldn't that be your  
Websphere MQ?

I am sure this is totally off-base, sorry.

I do have ActiveMQ successfully bridged to SonicMQ in production and  
it works fine (except for being unable to reconnect when Sonic goes  
away).  Admittedly, I am using a 5.0-SNAPSHOT build and not 4.1.1,  
though.


>
>
>
> thaibox1 wrote:
>>
>> I'm using MQ series 5.2 (I know it's old, but it's supposedly JMS
>> compliant).  We're looking to move off Websphere MQ and I'm  
>> evaluating
>> ActiveMQ, but we're still going to need to hook it up to Websphere MQ
>> since most of our remote clients use that app for remote  
>> messaging.  The
>> problem I'm facing is that I'm struggling to configure the JMS  
>> bridge to
>> successfully connect to Websphere MQ. Here is the activemq.xml  
>> file that
>> I'm using:
>>
>> <beans>
>>
>>   <!-- Allows us to use system properties as variables in this
>> configuration file -->
>>   <bean
>> class="org.springframework.beans.factory.config.PropertyPlaceholderCo 
>> nfigurer"/>
>>
>>   <broker xmlns="http://activemq.org/config/1.0"
>>           brokerName="ALERTQ"
>>           useJmx="true"
>>           persistent="true">
>>
>>     <!--  Use the following to set the broker memory limit -->
>>     <memoryManager>
>>         <usageManager id="memory-manager" limit="256 MB"/>
>>     </memoryManager>
>>
>>     <destinations>
>>        <queue physicalName="US.TO.THEM" />
>>        <queue physicalName="THEM.TO.US" />
>>        <topic physicalName="ALERT.TOPIC" />
>>     </destinations>
>>
>>     <transportConnectors>
>>        <transportConnector name="openwire" uri="tcp://mqserver: 
>> 31313" />
>>                            <!-- discoveryUri="multicast://default"  
>> -->
>>     </transportConnectors>
>>
>>     <networkConnectors>
>>       <!-- by default just auto discover the other brokers -->
>>       <!-- <networkConnector name="default-nc" uri="multicast:// 
>> default"/>
>> -->
>>     </networkConnectors>
>>
>>     <!-- Use the following to configure how ActiveMQ is exposed in  
>> JMX -->
>>     <managementContext>
>>        <managementContext connectorPort="5099"
>>                           jmxDomainName="org.apache.activemq"/>
>>     </managementContext>
>>
>> 	<jmsBridgeConnectors>
>> 		<jmsQueueConnector outboundQueueConnectionFactory="#remoteFactory">
>> 			<inboundQueueBridges>
>> 				<inboundQueueBridge inboundQueueName="THEM.TO.US"
>> 				                    localQueueName="THEM.TO.US"/>
>> 			</inboundQueueBridges>
>> 			<outboundQueueBridges>
>> 				<outboundQueueBridge outboundQueueName="US.TO.THEM"
>> 				                     localQueueName="US.TO.THEM"/>
>> 			</outboundQueueBridges>
>> 		</jmsQueueConnector>
>> 	</jmsBridgeConnectors>
>> 	
>>     <!-- In ActiveMQ 4, you can setup destination policies -->
>>     <destinationPolicy>
>>       <policyMap><policyEntries>
>>           <policyEntry topic="ALERT.>">
>>             <dispatchPolicy>
>>               <strictOrderDispatchPolicy />
>>             </dispatchPolicy>
>>             <subscriptionRecoveryPolicy>
>>               <lastImageSubscriptionRecoveryPolicy />
>>             </subscriptionRecoveryPolicy>
>>           </policyEntry>
>>       </policyEntries></policyMap>
>>     </destinationPolicy>
>>
>>
>>     <persistenceAdapter>
>>         <journaledJDBC journalLogFiles="5"
>> dataDirectory="${activemq.base}/activemq-data"/>
>>     </persistenceAdapter>
>>
>>   </broker>
>>
>>   <bean id="remoteFactory"
>> class="com.ibm.mq.jms.MQQueueConnectionFactory">
>> 	<property name="transportType" value="1"/>
>> 	<property name="hostName" value="remoteIP"/>
>> 	<property name="port" value="1444"/>
>> 	<property name="queueManager" value="ALERTQ"/>
>> 	<property name="channel" value="US.TO.THEM"/>
>>   </bean>
>>
>> When I start it up, I get:
>>
>> ./activemq
>> ACTIVEMQ_HOME: /u/pkgs/activemq/4.1.1
>> ACTIVEMQ_BASE: /u/home/admin/work/activemq/build
>> Loading message broker from: xbean:activemq.xml
>> INFO  CollectionFactory              - JDK 1.4+ collections available
>> INFO  XBeanXmlBeanDefinitionReader   - Loading XML bean  
>> definitions from
>> class path resource [activemq.xml]
>> INFO  ClassPathXmlApplicationContext - Bean factory for application
>> context
>> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashC 
>> ode=14247437]:
>> org.springframework.beans.factory.support.DefaultListableBeanFactory
>> defining beans
>> [org.springframework.beans.factory.config.PropertyPlaceholderConfigur 
>> er,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
>> root of BeanFactory hierarchy
>> INFO  ClassPathXmlApplicationContext - 3 beans defined in application
>> context
>> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashC 
>> ode=14247437]
>> INFO  ClassPathXmlApplicationContext - Unable to locate  
>> MessageSource with
>> name 'messageSource': using default
>> [org.springframework.context.support.DelegatingMessageSource@9ffe3f]
>> INFO  ClassPathXmlApplicationContext - Unable to locate
>> ApplicationEventMulticaster with name  
>> 'applicationEventMulticaster': using
>> default
>> [org.springframework.context.event.SimpleApplicationEventMulticaster@ 
>> 18352d8]
>> INFO  DefaultListableBeanFactory     - Pre-instantiating  
>> singletons in
>> factory
>> [org.springframework.beans.factory.support.DefaultListableBeanFactory
>> defining beans
>> [org.springframework.beans.factory.config.PropertyPlaceholderConfigur 
>> er,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
>> root of BeanFactory hierarchy]
>> INFO  BrokerService                  - ActiveMQ 4.1.1 JMS Message  
>> Broker
>> (ALERTQ) is starting
>> INFO  BrokerService                  - For help or more  
>> information please
>> see: http://incubator.apache.org/activemq/
>> INFO  JDBCPersistenceAdapter         - Database driver recognized:
>> [apache_derby_embedded_jdbc_driver]
>> INFO  DefaultDatabaseLocker          - Attempting to acquire the  
>> exclusive
>> lock to become the Master broker
>> INFO  DefaultDatabaseLocker          - Becoming the master on  
>> dataSource:
>> org.apache.derby.jdbc.EmbeddedDataSource@8a1977
>> INFO  JournalPersistenceAdapter      - Journal Recovery Started from:
>> Active Journal: using 5 x 20.0 Megs at:
>> /etrade/home/mrodrig9/work/activemq/build/activemq-data/journal
>> INFO  JournalPersistenceAdapter      - Journal Recovered: 0 message 
>> (s) in
>> transactions recovered.
>> INFO  TransportServerThreadSupport   - Listening for connections at:
>> tcp://someserver:31313
>> INFO  TransportConnector             - Connector openwire Started
>> INFO  ManagementContext              - JMX consoles can connect to
>> service:jmx:rmi:///jndi/rmi://localhost:5099/jmxrmi
>> Unable to load message catalog - mqji
>> ERROR JmsQueueConnector              - Failed to initialize the
>> JMSConnector
>> javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager  
>> for
>> '10.52.92.78:ALERTQ'
>>         at
>> com.ibm.mq.jms.services.ConfigEnvironment.newException 
>> (ConfigEnvironment.java:546)
>>         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java: 
>> 1137)
>>         at
>> com.ibm.mq.jms.MQConnection.createQMNonXA(MQConnection.java:799)
>>         at
>> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:255)
>>         at
>> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
>>         at
>> com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection 
>> (MQQueueConnectionFactory.java:142)
>>         at
>> org.apache.activemq.network.jms.JmsQueueConnector.initializeForeignQu 
>> eueConnection(JmsQueueConnector.java:216)
>>         at
>> org.apache.activemq.network.jms.JmsQueueConnector.init 
>> (JmsQueueConnector.java:54)
>>         at
>> org.apache.activemq.network.jms.JmsConnector.start 
>> (JmsConnector.java:114)
>>         at
>> org.apache.activemq.broker.BrokerService.startAllConnectors 
>> (BrokerService.java:1494)
>>         at
>> org.apache.activemq.broker.BrokerService.start(BrokerService.java: 
>> 402)
>>         at
>> org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet 
>> (XBeanBrokerService.java:47)
>>         at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBean 
>> Factory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java: 
>> 1062)
>>         at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBean 
>> Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
>>         at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBean 
>> Factory.createBean(AbstractAutowireCapableBeanFactory.java:420)
>>         at
>> org.springframework.beans.factory.support.AbstractBeanFactory 
>> $1.getObject(AbstractBeanFactory.java:245)
>>         at
>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistr 
>> y.getSingleton(DefaultSingletonBeanRegistry.java:141)
>>         at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean 
>> (AbstractBeanFactory.java:242)
>>         at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean 
>> (AbstractBeanFactory.java:156)
>>         at
>> org.springframework.beans.factory.support.DefaultListableBeanFactory. 
>> preInstantiateSingletons(DefaultListableBeanFactory.java:290)
>>         at
>> org.springframework.context.support.AbstractApplicationContext.refres 
>> h(AbstractApplicationContext.java:348)
>>         at
>> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init> 
>> (ClassPathXmlApplicationContext.java:161)
>>         at
>> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init> 
>> (ClassPathXmlApplicationContext.java:51)
>>         at
>> org.apache.activemq.xbean.XBeanBrokerFactory.createBroker 
>> (XBeanBrokerFactory.java:41)
>>         at
>> org.apache.activemq.broker.BrokerFactory.createBroker 
>> (BrokerFactory.java:57)
>>         at
>> org.apache.activemq.console.command.StartCommand.startBroker 
>> (StartCommand.java:82)
>>         at
>> org.apache.activemq.console.command.StartCommand.runTask 
>> (StartCommand.java:47)
>>         at
>> org.apache.activemq.console.command.AbstractCommand.execute 
>> (AbstractCommand.java:50)
>>         at
>> org.apache.activemq.console.command.ShellCommand.runTask 
>> (ShellCommand.java:82)
>>         at
>> org.apache.activemq.console.command.AbstractCommand.execute 
>> (AbstractCommand.java:50)
>>         at
>> org.apache.activemq.console.command.ShellCommand.main 
>> (ShellCommand.java:46)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native  
>> Method)
>>         at
>> sun.reflect.NativeMethodAccessorImpl.invoke 
>> (NativeMethodAccessorImpl.java:39)
>>         at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke 
>> (DelegatingMethodAccessorImpl.java:25)
>>         at java.lang.reflect.Method.invoke(Method.java:585)
>>         at org.apache.activemq.console.Main.runTaskClass(Main.java: 
>> 202)
>>         at org.apache.activemq.console.Main.main(Main.java:91)
>> INFO  JmsConnector                   - JMS Connector Connector:0  
>> Started
>> INFO  BrokerService                  - ActiveMQ JMS Message Broker
>> (ALERTQ, ID:dev6m3-53031-1190315038649-1:0) started
>> ERROR TransportConnector             - Could not accept connection  
>> from
>> /remoteIP:52978: java.io.IOException: Wire format negociation  
>> timeout:
>> peer did not send his wire format.
>> java.io.IOException: Wire format negociation timeout: peer did not  
>> send
>> his wire format.
>>         at
>> org.apache.activemq.transport.WireFormatNegotiator.oneway 
>> (WireFormatNegotiator.java:88)
>>         at
>> org.apache.activemq.transport.MutexTransport.oneway 
>> (MutexTransport.java:47)
>>         at
>> org.apache.activemq.broker.TransportConnection.dispatch 
>> (TransportConnection.java:1138)
>>         at
>> org.apache.activemq.broker.TransportConnection.processDispatch 
>> (TransportConnection.java:805)
>>         at
>> org.apache.activemq.broker.TransportConnection.start 
>> (TransportConnection.java:885)
>>         at
>> org.apache.activemq.broker.TransportConnector$1.onAccept 
>> (TransportConnector.java:148)
>>         at
>> org.apache.activemq.transport.tcp.TcpTransportServer.run 
>> (TcpTransportServer.java:167)
>>         at java.lang.Thread.run(Thread.java:595)
>>
>> So here we see that activemq tries to connect to websphere MQ and  
>> fails
>> miserably and then every so often, WebsphereMQ tries to connect to
>> Activemq and falls down as well.
>>
>> Any help you can offer would be greatly appreciated.
>>
>
> -- 
> View this message in context: http://www.nabble.com/ActiveMQ-JMS- 
> Bridge-to-Websphere-MQ-tf4489485s2354.html#a12865475
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

-- 
Daryl
http://itsallsemantics.com

"2 + 2 = 5, for sufficiently large values of 2."
     -- Ron Jeffries




Re: ActiveMQ JMS Bridge to Websphere MQ

Posted by thaibox1 <th...@yahoo.com>.
Does anyone require anything more from me to help diagnose this issue?

Thanks...



thaibox1 wrote:
> 
> I'm using MQ series 5.2 (I know it's old, but it's supposedly JMS
> compliant).  We're looking to move off Websphere MQ and I'm evaluating
> ActiveMQ, but we're still going to need to hook it up to Websphere MQ
> since most of our remote clients use that app for remote messaging.  The
> problem I'm facing is that I'm struggling to configure the JMS bridge to
> successfully connect to Websphere MQ. Here is the activemq.xml file that
> I'm using:
> 
> <beans>
> 
>   <!-- Allows us to use system properties as variables in this
> configuration file -->
>   <bean
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
>   
>   <broker xmlns="http://activemq.org/config/1.0"
>           brokerName="ALERTQ"
>           useJmx="true" 
>           persistent="true">
>     
>     <!--  Use the following to set the broker memory limit -->
>     <memoryManager>  
>         <usageManager id="memory-manager" limit="256 MB"/>
>     </memoryManager>
>     
>     <destinations>
>        <queue physicalName="US.TO.THEM" />
>        <queue physicalName="THEM.TO.US" />
>        <topic physicalName="ALERT.TOPIC" />
>     </destinations>
>     
>     <transportConnectors>
>        <transportConnector name="openwire" uri="tcp://mqserver:31313" />
>                            <!-- discoveryUri="multicast://default" -->
>     </transportConnectors>
>     
>     <networkConnectors>
>       <!-- by default just auto discover the other brokers -->
>       <!-- <networkConnector name="default-nc" uri="multicast://default"/>
> -->
>     </networkConnectors>
>     
>     <!-- Use the following to configure how ActiveMQ is exposed in JMX -->
>     <managementContext>
>        <managementContext connectorPort="5099" 
>                           jmxDomainName="org.apache.activemq"/>
>     </managementContext>
> 
> 	<jmsBridgeConnectors>
> 		<jmsQueueConnector outboundQueueConnectionFactory="#remoteFactory">
> 			<inboundQueueBridges>
> 				<inboundQueueBridge inboundQueueName="THEM.TO.US"
> 				                    localQueueName="THEM.TO.US"/>
> 			</inboundQueueBridges>
> 			<outboundQueueBridges>
> 				<outboundQueueBridge outboundQueueName="US.TO.THEM"
> 				                     localQueueName="US.TO.THEM"/>
> 			</outboundQueueBridges>
> 		</jmsQueueConnector>
> 	</jmsBridgeConnectors>
> 	
>     <!-- In ActiveMQ 4, you can setup destination policies -->  
>     <destinationPolicy>
>       <policyMap><policyEntries>
>           <policyEntry topic="ALERT.>">
>             <dispatchPolicy>
>               <strictOrderDispatchPolicy />
>             </dispatchPolicy>
>             <subscriptionRecoveryPolicy>
>               <lastImageSubscriptionRecoveryPolicy />
>             </subscriptionRecoveryPolicy>
>           </policyEntry>
>       </policyEntries></policyMap>
>     </destinationPolicy>
>   
>   
>     <persistenceAdapter>
>         <journaledJDBC journalLogFiles="5"
> dataDirectory="${activemq.base}/activemq-data"/>
>     </persistenceAdapter>
>     
>   </broker>
> 
>   <bean id="remoteFactory"
> class="com.ibm.mq.jms.MQQueueConnectionFactory">
> 	<property name="transportType" value="1"/>
> 	<property name="hostName" value="remoteIP"/>
> 	<property name="port" value="1444"/>
> 	<property name="queueManager" value="ALERTQ"/>
> 	<property name="channel" value="US.TO.THEM"/>
>   </bean>
>   
> When I start it up, I get:
> 
> ./activemq
> ACTIVEMQ_HOME: /u/pkgs/activemq/4.1.1
> ACTIVEMQ_BASE: /u/home/admin/work/activemq/build
> Loading message broker from: xbean:activemq.xml
> INFO  CollectionFactory              - JDK 1.4+ collections available
> INFO  XBeanXmlBeanDefinitionReader   - Loading XML bean definitions from
> class path resource [activemq.xml]
> INFO  ClassPathXmlApplicationContext - Bean factory for application
> context
> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCode=14247437]:
> org.springframework.beans.factory.support.DefaultListableBeanFactory
> defining beans
> [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
> root of BeanFactory hierarchy
> INFO  ClassPathXmlApplicationContext - 3 beans defined in application
> context
> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCode=14247437]
> INFO  ClassPathXmlApplicationContext - Unable to locate MessageSource with
> name 'messageSource': using default
> [org.springframework.context.support.DelegatingMessageSource@9ffe3f]
> INFO  ClassPathXmlApplicationContext - Unable to locate
> ApplicationEventMulticaster with name 'applicationEventMulticaster': using
> default
> [org.springframework.context.event.SimpleApplicationEventMulticaster@18352d8]
> INFO  DefaultListableBeanFactory     - Pre-instantiating singletons in
> factory
> [org.springframework.beans.factory.support.DefaultListableBeanFactory
> defining beans
> [org.springframework.beans.factory.config.PropertyPlaceholderConfigurer,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
> root of BeanFactory hierarchy]
> INFO  BrokerService                  - ActiveMQ 4.1.1 JMS Message Broker
> (ALERTQ) is starting
> INFO  BrokerService                  - For help or more information please
> see: http://incubator.apache.org/activemq/
> INFO  JDBCPersistenceAdapter         - Database driver recognized:
> [apache_derby_embedded_jdbc_driver]
> INFO  DefaultDatabaseLocker          - Attempting to acquire the exclusive
> lock to become the Master broker
> INFO  DefaultDatabaseLocker          - Becoming the master on dataSource:
> org.apache.derby.jdbc.EmbeddedDataSource@8a1977
> INFO  JournalPersistenceAdapter      - Journal Recovery Started from:
> Active Journal: using 5 x 20.0 Megs at:
> /etrade/home/mrodrig9/work/activemq/build/activemq-data/journal
> INFO  JournalPersistenceAdapter      - Journal Recovered: 0 message(s) in
> transactions recovered.
> INFO  TransportServerThreadSupport   - Listening for connections at:
> tcp://someserver:31313
> INFO  TransportConnector             - Connector openwire Started
> INFO  ManagementContext              - JMX consoles can connect to
> service:jmx:rmi:///jndi/rmi://localhost:5099/jmxrmi
> Unable to load message catalog - mqji
> ERROR JmsQueueConnector              - Failed to initialize the
> JMSConnector
> javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for
> '10.52.92.78:ALERTQ'
>         at
> com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:546)
>         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:1137)
>         at
> com.ibm.mq.jms.MQConnection.createQMNonXA(MQConnection.java:799)
>         at
> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:255)
>         at
> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
>         at
> com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection(MQQueueConnectionFactory.java:142)
>         at
> org.apache.activemq.network.jms.JmsQueueConnector.initializeForeignQueueConnection(JmsQueueConnector.java:216)
>         at
> org.apache.activemq.network.jms.JmsQueueConnector.init(JmsQueueConnector.java:54)
>         at
> org.apache.activemq.network.jms.JmsConnector.start(JmsConnector.java:114)
>         at
> org.apache.activemq.broker.BrokerService.startAllConnectors(BrokerService.java:1494)
>         at
> org.apache.activemq.broker.BrokerService.start(BrokerService.java:402)
>         at
> org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet(XBeanBrokerService.java:47)
>         at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1062)
>         at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
>         at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:420)
>         at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:245)
>         at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:141)
>         at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:242)
>         at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:156)
>         at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:290)
>         at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:348)
>         at
> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:161)
>         at
> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:51)
>         at
> org.apache.activemq.xbean.XBeanBrokerFactory.createBroker(XBeanBrokerFactory.java:41)
>         at
> org.apache.activemq.broker.BrokerFactory.createBroker(BrokerFactory.java:57)
>         at
> org.apache.activemq.console.command.StartCommand.startBroker(StartCommand.java:82)
>         at
> org.apache.activemq.console.command.StartCommand.runTask(StartCommand.java:47)
>         at
> org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:50)
>         at
> org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:82)
>         at
> org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:50)
>         at
> org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:46)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.activemq.console.Main.runTaskClass(Main.java:202)
>         at org.apache.activemq.console.Main.main(Main.java:91)
> INFO  JmsConnector                   - JMS Connector Connector:0 Started
> INFO  BrokerService                  - ActiveMQ JMS Message Broker
> (ALERTQ, ID:dev6m3-53031-1190315038649-1:0) started
> ERROR TransportConnector             - Could not accept connection from
> /remoteIP:52978: java.io.IOException: Wire format negociation timeout:
> peer did not send his wire format.
> java.io.IOException: Wire format negociation timeout: peer did not send
> his wire format.
>         at
> org.apache.activemq.transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:88)
>         at
> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:47)
>         at
> org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1138)
>         at
> org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:805)
>         at
> org.apache.activemq.broker.TransportConnection.start(TransportConnection.java:885)
>         at
> org.apache.activemq.broker.TransportConnector$1.onAccept(TransportConnector.java:148)
>         at
> org.apache.activemq.transport.tcp.TcpTransportServer.run(TcpTransportServer.java:167)
>         at java.lang.Thread.run(Thread.java:595)
> 
> So here we see that activemq tries to connect to websphere MQ and fails
> miserably and then every so often, WebsphereMQ tries to connect to
> Activemq and falls down as well.
> 
> Any help you can offer would be greatly appreciated.
> 

-- 
View this message in context: http://www.nabble.com/ActiveMQ-JMS-Bridge-to-Websphere-MQ-tf4489485s2354.html#a12865475
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: ActiveMQ JMS Bridge to Websphere MQ

Posted by thaibox1 <th...@yahoo.com>.

I notice that you are not supplying any authentication.  Is it  
possible that your MQ Series broker requires it?


The remote MQ Series Broker does not require authentication.
-- 
View this message in context: http://www.nabble.com/ActiveMQ-JMS-Bridge-to-Websphere-MQ-tf4489485s2354.html#a12820806
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: ActiveMQ JMS Bridge to Websphere MQ

Posted by Hiram Chirino <hi...@hiramchirino.com>.
It looks like the:

 <bean id="remoteFactory" class="com.ibm.mq.jms.MQQueueConnectionFactory">
       <property name="transportType" value="1"/>
       <property name="hostName" value="remoteIP"/>
       <property name="port" value="1444"/>
       <property name="queueManager" value="ALERTQ"/>
       <property name="channel" value="US.TO.THEM"/>
 </bean>

Might not be correctly configured.  The JMS Bridge is getting an error
when it tries to create a connection using the above configured
connection factory.

I would suggest that you test out the above connection factory
configuration in a small test first.  I bet you will also get an error
when you try to crate the connection.  Something like:

com.ibm.mq.jms.MQQueueConnectionFactory factory = new
com.ibm.mq.jms.MQQueueConnectionFactory();
factory.setTransportType(1);
factory.setHostName("remoteIP");
factory.setPort(1444");
factory.setQueueManager("ALERTQ");
factory.setChannel("US.TO.THEM");
factory.createConnection();

If that throws an error then you need to consult with your MQ Series
docs to find out what's wrong with your connection settings.


On 9/20/07, Daryl Richter <ng...@comcast.net> wrote:
> I notice that you are not supplying any authentication.  Is it
> possible that your MQ Series broker requires it?
>
>
> On Sep 20, 2007, at 3:07 PM, thaibox1 wrote:
>
> >
> > I'm using MQ series 5.2 (I know it's old, but it's supposedly JMS
> > compliant).
> > We're looking to move off Websphere MQ and I'm evaluating ActiveMQ,
> > but
> > we're still going to need to hook it up to Websphere MQ since most
> > of our
> > remote clients use that app for remote messaging.  The problem I'm
> > facing is
> > that I'm struggling to configure the JMS bridge to successfully
> > connect to
> > Websphere MQ. Here is the activemq.xml file that I'm using:
> >
> > <beans>
> >
> >   <!-- Allows us to use system properties as variables in this
> > configuration
> > file -->
> >   <bean
> > class="org.springframework.beans.factory.config.PropertyPlaceholderCon
> > figurer"/>
> >
> >   <broker xmlns="http://activemq.org/config/1.0"
> >           brokerName="ALERTQ"
> >           useJmx="true"
> >           persistent="true">
> >
> >     <!--  Use the following to set the broker memory limit -->
> >     <memoryManager>
> >         <usageManager id="memory-manager" limit="256 MB"/>
> >     </memoryManager>
> >
> >     <destinations>
> >        <queue physicalName="US.TO.THEM" />
> >        <queue physicalName="THEM.TO.US" />
> >        <topic physicalName="ALERT.TOPIC" />
> >     </destinations>
> >
> >     <transportConnectors>
> >        <transportConnector name="openwire" uri="tcp://mqserver:
> > 31313" />
> >                            <!-- discoveryUri="multicast://default" -->
> >     </transportConnectors>
> >
> >     <networkConnectors>
> >       <!-- by default just auto discover the other brokers -->
> >       <!-- <networkConnector name="default-nc" uri="multicast://
> > default"/>
> > -->
> >     </networkConnectors>
> >
> >     <!-- Use the following to configure how ActiveMQ is exposed in
> > JMX -->
> >     <managementContext>
> >        <managementContext connectorPort="5099"
> >                           jmxDomainName="org.apache.activemq"/>
> >     </managementContext>
> >
> >       <jmsBridgeConnectors>
> >               <jmsQueueConnector outboundQueueConnectionFactory="#remoteFactory">
> >                       <inboundQueueBridges>
> >                               <inboundQueueBridge inboundQueueName="THEM.TO.US"
> >                                                   localQueueName="THEM.TO.US"/>
> >                       </inboundQueueBridges>
> >                       <outboundQueueBridges>
> >                               <outboundQueueBridge outboundQueueName="US.TO.THEM"
> >                                                    localQueueName="US.TO.THEM"/>
> >                       </outboundQueueBridges>
> >               </jmsQueueConnector>
> >       </jmsBridgeConnectors>
> >
> >     <!-- In ActiveMQ 4, you can setup destination policies -->
> >     <destinationPolicy>
> >       <policyMap><policyEntries>
> >           <policyEntry topic="ALERT.>">
> >             <dispatchPolicy>
> >               <strictOrderDispatchPolicy />
> >             </dispatchPolicy>
> >             <subscriptionRecoveryPolicy>
> >               <lastImageSubscriptionRecoveryPolicy />
> >             </subscriptionRecoveryPolicy>
> >           </policyEntry>
> >       </policyEntries></policyMap>
> >     </destinationPolicy>
> >
> >
> >     <persistenceAdapter>
> >         <journaledJDBC journalLogFiles="5"
> > dataDirectory="${activemq.base}/activemq-data"/>
> >     </persistenceAdapter>
> >
> >   </broker>
> >
> >   <bean id="remoteFactory"
> > class="com.ibm.mq.jms.MQQueueConnectionFactory">
> >       <property name="transportType" value="1"/>
> >       <property name="hostName" value="remoteIP"/>
> >       <property name="port" value="1444"/>
> >       <property name="queueManager" value="ALERTQ"/>
> >       <property name="channel" value="US.TO.THEM"/>
> >   </bean>
> >
> > When I start it up, I get:
> >
> > ./activemq
> > ACTIVEMQ_HOME: /u/pkgs/activemq/4.1.1
> > ACTIVEMQ_BASE: /u/home/admin/work/activemq/build
> > Loading message broker from: xbean:activemq.xml
> > INFO  CollectionFactory              - JDK 1.4+ collections available
> > INFO  XBeanXmlBeanDefinitionReader   - Loading XML bean definitions
> > from
> > class path resource [activemq.xml]
> > INFO  ClassPathXmlApplicationContext - Bean factory for application
> > context
> > [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCo
> > de=14247437]:
> > org.springframework.beans.factory.support.DefaultListableBeanFactory
> > defining beans
> > [org.springframework.beans.factory.config.PropertyPlaceholderConfigure
> > r,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
> > root of BeanFactory hierarchy
> > INFO  ClassPathXmlApplicationContext - 3 beans defined in application
> > context
> > [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCo
> > de=14247437]
> > INFO  ClassPathXmlApplicationContext - Unable to locate
> > MessageSource with
> > name 'messageSource': using default
> > [org.springframework.context.support.DelegatingMessageSource@9ffe3f]
> > INFO  ClassPathXmlApplicationContext - Unable to locate
> > ApplicationEventMulticaster with name
> > 'applicationEventMulticaster': using
> > default
> > [org.springframework.context.event.SimpleApplicationEventMulticaster@1
> > 8352d8]
> > INFO  DefaultListableBeanFactory     - Pre-instantiating singletons in
> > factory
> > [org.springframework.beans.factory.support.DefaultListableBeanFactory
> > defining beans
> > [org.springframework.beans.factory.config.PropertyPlaceholderConfigure
> > r,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
> > root of BeanFactory hierarchy]
> > INFO  BrokerService                  - ActiveMQ 4.1.1 JMS Message
> > Broker
> > (ALERTQ) is starting
> > INFO  BrokerService                  - For help or more information
> > please
> > see: http://incubator.apache.org/activemq/
> > INFO  JDBCPersistenceAdapter         - Database driver recognized:
> > [apache_derby_embedded_jdbc_driver]
> > INFO  DefaultDatabaseLocker          - Attempting to acquire the
> > exclusive
> > lock to become the Master broker
> > INFO  DefaultDatabaseLocker          - Becoming the master on
> > dataSource:
> > org.apache.derby.jdbc.EmbeddedDataSource@8a1977
> > INFO  JournalPersistenceAdapter      - Journal Recovery Started
> > from: Active
> > Journal: using 5 x 20.0 Megs at:
> > /etrade/home/mrodrig9/work/activemq/build/activemq-data/journal
> > INFO  JournalPersistenceAdapter      - Journal Recovered: 0 message
> > (s) in
> > transactions recovered.
> > INFO  TransportServerThreadSupport   - Listening for connections at:
> > tcp://someserver:31313
> > INFO  TransportConnector             - Connector openwire Started
> > INFO  ManagementContext              - JMX consoles can connect to
> > service:jmx:rmi:///jndi/rmi://localhost:5099/jmxrmi
> > Unable to load message catalog - mqji
> > ERROR JmsQueueConnector              - Failed to initialize the
> > JMSConnector
> > javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for
> > '10.52.92.78:ALERTQ'
> >         at
> > com.ibm.mq.jms.services.ConfigEnvironment.newException
> > (ConfigEnvironment.java:546)
> >         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java:
> > 1137)
> >         at com.ibm.mq.jms.MQConnection.createQMNonXA
> > (MQConnection.java:799)
> >         at
> > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:255)
> >         at
> > com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
> >         at
> > com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection
> > (MQQueueConnectionFactory.java:142)
> >         at
> > org.apache.activemq.network.jms.JmsQueueConnector.initializeForeignQue
> > ueConnection(JmsQueueConnector.java:216)
> >         at
> > org.apache.activemq.network.jms.JmsQueueConnector.init
> > (JmsQueueConnector.java:54)
> >         at
> > org.apache.activemq.network.jms.JmsConnector.start
> > (JmsConnector.java:114)
> >         at
> > org.apache.activemq.broker.BrokerService.startAllConnectors
> > (BrokerService.java:1494)
> >         at
> > org.apache.activemq.broker.BrokerService.start(BrokerService.java:402)
> >         at
> > org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet
> > (XBeanBrokerService.java:47)
> >         at
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
> > actory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1062)
> >         at
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
> > actory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
> >         at
> > org.springframework.beans.factory.support.AbstractAutowireCapableBeanF
> > actory.createBean(AbstractAutowireCapableBeanFactory.java:420)
> >         at
> > org.springframework.beans.factory.support.AbstractBeanFactory
> > $1.getObject(AbstractBeanFactory.java:245)
> >         at
> > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry
> > .getSingleton(DefaultSingletonBeanRegistry.java:141)
> >         at
> > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(
> > AbstractBeanFactory.java:242)
> >         at
> > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(
> > AbstractBeanFactory.java:156)
> >         at
> > org.springframework.beans.factory.support.DefaultListableBeanFactory.p
> > reInstantiateSingletons(DefaultListableBeanFactory.java:290)
> >         at
> > org.springframework.context.support.AbstractApplicationContext.refresh
> > (AbstractApplicationContext.java:348)
> >         at
> > org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(
> > ClassPathXmlApplicationContext.java:161)
> >         at
> > org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>(
> > ClassPathXmlApplicationContext.java:51)
> >         at
> > org.apache.activemq.xbean.XBeanBrokerFactory.createBroker
> > (XBeanBrokerFactory.java:41)
> >         at
> > org.apache.activemq.broker.BrokerFactory.createBroker
> > (BrokerFactory.java:57)
> >         at
> > org.apache.activemq.console.command.StartCommand.startBroker
> > (StartCommand.java:82)
> >         at
> > org.apache.activemq.console.command.StartCommand.runTask
> > (StartCommand.java:47)
> >         at
> > org.apache.activemq.console.command.AbstractCommand.execute
> > (AbstractCommand.java:50)
> >         at
> > org.apache.activemq.console.command.ShellCommand.runTask
> > (ShellCommand.java:82)
> >         at
> > org.apache.activemq.console.command.AbstractCommand.execute
> > (AbstractCommand.java:50)
> >         at
> > org.apache.activemq.console.command.ShellCommand.main
> > (ShellCommand.java:46)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke
> > (NativeMethodAccessorImpl.java:39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke
> > (DelegatingMethodAccessorImpl.java:25)
> >         at java.lang.reflect.Method.invoke(Method.java:585)
> >         at org.apache.activemq.console.Main.runTaskClass(Main.java:
> > 202)
> >         at org.apache.activemq.console.Main.main(Main.java:91)
> > INFO  JmsConnector                   - JMS Connector Connector:0
> > Started
> > INFO  BrokerService                  - ActiveMQ JMS Message Broker
> > (ALERTQ,
> > ID:dev6m3-53031-1190315038649-1:0) started
> > ERROR TransportConnector             - Could not accept connection
> > from
> > /remoteIP:52978: java.io.IOException: Wire format negociation
> > timeout: peer
> > did not send his wire format.
> > java.io.IOException: Wire format negociation timeout: peer did not
> > send his
> > wire format.
> >         at
> > org.apache.activemq.transport.WireFormatNegotiator.oneway
> > (WireFormatNegotiator.java:88)
> >         at
> > org.apache.activemq.transport.MutexTransport.oneway
> > (MutexTransport.java:47)
> >         at
> > org.apache.activemq.broker.TransportConnection.dispatch
> > (TransportConnection.java:1138)
> >         at
> > org.apache.activemq.broker.TransportConnection.processDispatch
> > (TransportConnection.java:805)
> >         at
> > org.apache.activemq.broker.TransportConnection.start
> > (TransportConnection.java:885)
> >         at
> > org.apache.activemq.broker.TransportConnector$1.onAccept
> > (TransportConnector.java:148)
> >         at
> > org.apache.activemq.transport.tcp.TcpTransportServer.run
> > (TcpTransportServer.java:167)
> >         at java.lang.Thread.run(Thread.java:595)
> >
> > So here we see that activemq tries to connect to websphere MQ and
> > fails
> > miserably and then every so often, WebsphereMQ tries to connect to
> > Activemq
> > and falls down as well.
> >
> > Any help you can offer would be greatly appreciated.
> > --
> > View this message in context: http://www.nabble.com/ActiveMQ-JMS-
> > Bridge-to-Websphere-MQ-tf4489485s2354.html#a12803797
> > Sent from the ActiveMQ - User mailing list archive at Nabble.com.
> >
>
> --
> Daryl
>
> "Don't worry about people stealing an idea. If it's original, you
> will have to ram it down their throats."
>      -- Howard Aiken
>
>
>
>


-- 
Regards,
Hiram

Blog: http://hiramchirino.com

Re: ActiveMQ JMS Bridge to Websphere MQ

Posted by Daryl Richter <ng...@comcast.net>.
I notice that you are not supplying any authentication.  Is it  
possible that your MQ Series broker requires it?


On Sep 20, 2007, at 3:07 PM, thaibox1 wrote:

>
> I'm using MQ series 5.2 (I know it's old, but it's supposedly JMS  
> compliant).
> We're looking to move off Websphere MQ and I'm evaluating ActiveMQ,  
> but
> we're still going to need to hook it up to Websphere MQ since most  
> of our
> remote clients use that app for remote messaging.  The problem I'm  
> facing is
> that I'm struggling to configure the JMS bridge to successfully  
> connect to
> Websphere MQ. Here is the activemq.xml file that I'm using:
>
> <beans>
>
>   <!-- Allows us to use system properties as variables in this  
> configuration
> file -->
>   <bean
> class="org.springframework.beans.factory.config.PropertyPlaceholderCon 
> figurer"/>
>
>   <broker xmlns="http://activemq.org/config/1.0"
>           brokerName="ALERTQ"
>           useJmx="true"
>           persistent="true">
>
>     <!--  Use the following to set the broker memory limit -->
>     <memoryManager>
>         <usageManager id="memory-manager" limit="256 MB"/>
>     </memoryManager>
>
>     <destinations>
>        <queue physicalName="US.TO.THEM" />
>        <queue physicalName="THEM.TO.US" />
>        <topic physicalName="ALERT.TOPIC" />
>     </destinations>
>
>     <transportConnectors>
>        <transportConnector name="openwire" uri="tcp://mqserver: 
> 31313" />
>                            <!-- discoveryUri="multicast://default" -->
>     </transportConnectors>
>
>     <networkConnectors>
>       <!-- by default just auto discover the other brokers -->
>       <!-- <networkConnector name="default-nc" uri="multicast:// 
> default"/>
> -->
>     </networkConnectors>
>
>     <!-- Use the following to configure how ActiveMQ is exposed in  
> JMX -->
>     <managementContext>
>        <managementContext connectorPort="5099"
>                           jmxDomainName="org.apache.activemq"/>
>     </managementContext>
>
> 	<jmsBridgeConnectors>
> 		<jmsQueueConnector outboundQueueConnectionFactory="#remoteFactory">
> 			<inboundQueueBridges>
> 				<inboundQueueBridge inboundQueueName="THEM.TO.US"
> 				                    localQueueName="THEM.TO.US"/>
> 			</inboundQueueBridges>
> 			<outboundQueueBridges>
> 				<outboundQueueBridge outboundQueueName="US.TO.THEM"
> 				                     localQueueName="US.TO.THEM"/>
> 			</outboundQueueBridges>
> 		</jmsQueueConnector>
> 	</jmsBridgeConnectors>
> 	
>     <!-- In ActiveMQ 4, you can setup destination policies -->
>     <destinationPolicy>
>       <policyMap><policyEntries>
>           <policyEntry topic="ALERT.>">
>             <dispatchPolicy>
>               <strictOrderDispatchPolicy />
>             </dispatchPolicy>
>             <subscriptionRecoveryPolicy>
>               <lastImageSubscriptionRecoveryPolicy />
>             </subscriptionRecoveryPolicy>
>           </policyEntry>
>       </policyEntries></policyMap>
>     </destinationPolicy>
>
>
>     <persistenceAdapter>
>         <journaledJDBC journalLogFiles="5"
> dataDirectory="${activemq.base}/activemq-data"/>
>     </persistenceAdapter>
>
>   </broker>
>
>   <bean id="remoteFactory"  
> class="com.ibm.mq.jms.MQQueueConnectionFactory">
> 	<property name="transportType" value="1"/>
> 	<property name="hostName" value="remoteIP"/>
> 	<property name="port" value="1444"/>
> 	<property name="queueManager" value="ALERTQ"/>
> 	<property name="channel" value="US.TO.THEM"/>
>   </bean>
>
> When I start it up, I get:
>
> ./activemq
> ACTIVEMQ_HOME: /u/pkgs/activemq/4.1.1
> ACTIVEMQ_BASE: /u/home/admin/work/activemq/build
> Loading message broker from: xbean:activemq.xml
> INFO  CollectionFactory              - JDK 1.4+ collections available
> INFO  XBeanXmlBeanDefinitionReader   - Loading XML bean definitions  
> from
> class path resource [activemq.xml]
> INFO  ClassPathXmlApplicationContext - Bean factory for application  
> context
> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCo 
> de=14247437]:
> org.springframework.beans.factory.support.DefaultListableBeanFactory
> defining beans
> [org.springframework.beans.factory.config.PropertyPlaceholderConfigure 
> r,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
> root of BeanFactory hierarchy
> INFO  ClassPathXmlApplicationContext - 3 beans defined in application
> context
> [org.apache.xbean.spring.context.ClassPathXmlApplicationContext;hashCo 
> de=14247437]
> INFO  ClassPathXmlApplicationContext - Unable to locate  
> MessageSource with
> name 'messageSource': using default
> [org.springframework.context.support.DelegatingMessageSource@9ffe3f]
> INFO  ClassPathXmlApplicationContext - Unable to locate
> ApplicationEventMulticaster with name  
> 'applicationEventMulticaster': using
> default
> [org.springframework.context.event.SimpleApplicationEventMulticaster@1 
> 8352d8]
> INFO  DefaultListableBeanFactory     - Pre-instantiating singletons in
> factory
> [org.springframework.beans.factory.support.DefaultListableBeanFactory
> defining beans
> [org.springframework.beans.factory.config.PropertyPlaceholderConfigure 
> r,org.apache.activemq.xbean.XBeanBrokerService,remoteFactory];
> root of BeanFactory hierarchy]
> INFO  BrokerService                  - ActiveMQ 4.1.1 JMS Message  
> Broker
> (ALERTQ) is starting
> INFO  BrokerService                  - For help or more information  
> please
> see: http://incubator.apache.org/activemq/
> INFO  JDBCPersistenceAdapter         - Database driver recognized:
> [apache_derby_embedded_jdbc_driver]
> INFO  DefaultDatabaseLocker          - Attempting to acquire the  
> exclusive
> lock to become the Master broker
> INFO  DefaultDatabaseLocker          - Becoming the master on  
> dataSource:
> org.apache.derby.jdbc.EmbeddedDataSource@8a1977
> INFO  JournalPersistenceAdapter      - Journal Recovery Started  
> from: Active
> Journal: using 5 x 20.0 Megs at:
> /etrade/home/mrodrig9/work/activemq/build/activemq-data/journal
> INFO  JournalPersistenceAdapter      - Journal Recovered: 0 message 
> (s) in
> transactions recovered.
> INFO  TransportServerThreadSupport   - Listening for connections at:
> tcp://someserver:31313
> INFO  TransportConnector             - Connector openwire Started
> INFO  ManagementContext              - JMX consoles can connect to
> service:jmx:rmi:///jndi/rmi://localhost:5099/jmxrmi
> Unable to load message catalog - mqji
> ERROR JmsQueueConnector              - Failed to initialize the  
> JMSConnector
> javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for
> '10.52.92.78:ALERTQ'
>         at
> com.ibm.mq.jms.services.ConfigEnvironment.newException 
> (ConfigEnvironment.java:546)
>         at com.ibm.mq.jms.MQConnection.createQM(MQConnection.java: 
> 1137)
>         at com.ibm.mq.jms.MQConnection.createQMNonXA 
> (MQConnection.java:799)
>         at
> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:255)
>         at
> com.ibm.mq.jms.MQQueueConnection.<init>(MQQueueConnection.java:78)
>         at
> com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection 
> (MQQueueConnectionFactory.java:142)
>         at
> org.apache.activemq.network.jms.JmsQueueConnector.initializeForeignQue 
> ueConnection(JmsQueueConnector.java:216)
>         at
> org.apache.activemq.network.jms.JmsQueueConnector.init 
> (JmsQueueConnector.java:54)
>         at
> org.apache.activemq.network.jms.JmsConnector.start 
> (JmsConnector.java:114)
>         at
> org.apache.activemq.broker.BrokerService.startAllConnectors 
> (BrokerService.java:1494)
>         at
> org.apache.activemq.broker.BrokerService.start(BrokerService.java:402)
>         at
> org.apache.activemq.xbean.XBeanBrokerService.afterPropertiesSet 
> (XBeanBrokerService.java:47)
>         at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanF 
> actory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1062)
>         at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanF 
> actory.initializeBean(AbstractAutowireCapableBeanFactory.java:1029)
>         at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanF 
> actory.createBean(AbstractAutowireCapableBeanFactory.java:420)
>         at
> org.springframework.beans.factory.support.AbstractBeanFactory 
> $1.getObject(AbstractBeanFactory.java:245)
>         at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry 
> .getSingleton(DefaultSingletonBeanRegistry.java:141)
>         at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean( 
> AbstractBeanFactory.java:242)
>         at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean( 
> AbstractBeanFactory.java:156)
>         at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.p 
> reInstantiateSingletons(DefaultListableBeanFactory.java:290)
>         at
> org.springframework.context.support.AbstractApplicationContext.refresh 
> (AbstractApplicationContext.java:348)
>         at
> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>( 
> ClassPathXmlApplicationContext.java:161)
>         at
> org.apache.xbean.spring.context.ClassPathXmlApplicationContext.<init>( 
> ClassPathXmlApplicationContext.java:51)
>         at
> org.apache.activemq.xbean.XBeanBrokerFactory.createBroker 
> (XBeanBrokerFactory.java:41)
>         at
> org.apache.activemq.broker.BrokerFactory.createBroker 
> (BrokerFactory.java:57)
>         at
> org.apache.activemq.console.command.StartCommand.startBroker 
> (StartCommand.java:82)
>         at
> org.apache.activemq.console.command.StartCommand.runTask 
> (StartCommand.java:47)
>         at
> org.apache.activemq.console.command.AbstractCommand.execute 
> (AbstractCommand.java:50)
>         at
> org.apache.activemq.console.command.ShellCommand.runTask 
> (ShellCommand.java:82)
>         at
> org.apache.activemq.console.command.AbstractCommand.execute 
> (AbstractCommand.java:50)
>         at
> org.apache.activemq.console.command.ShellCommand.main 
> (ShellCommand.java:46)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke 
> (NativeMethodAccessorImpl.java:39)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke 
> (DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.activemq.console.Main.runTaskClass(Main.java: 
> 202)
>         at org.apache.activemq.console.Main.main(Main.java:91)
> INFO  JmsConnector                   - JMS Connector Connector:0  
> Started
> INFO  BrokerService                  - ActiveMQ JMS Message Broker  
> (ALERTQ,
> ID:dev6m3-53031-1190315038649-1:0) started
> ERROR TransportConnector             - Could not accept connection  
> from
> /remoteIP:52978: java.io.IOException: Wire format negociation  
> timeout: peer
> did not send his wire format.
> java.io.IOException: Wire format negociation timeout: peer did not  
> send his
> wire format.
>         at
> org.apache.activemq.transport.WireFormatNegotiator.oneway 
> (WireFormatNegotiator.java:88)
>         at
> org.apache.activemq.transport.MutexTransport.oneway 
> (MutexTransport.java:47)
>         at
> org.apache.activemq.broker.TransportConnection.dispatch 
> (TransportConnection.java:1138)
>         at
> org.apache.activemq.broker.TransportConnection.processDispatch 
> (TransportConnection.java:805)
>         at
> org.apache.activemq.broker.TransportConnection.start 
> (TransportConnection.java:885)
>         at
> org.apache.activemq.broker.TransportConnector$1.onAccept 
> (TransportConnector.java:148)
>         at
> org.apache.activemq.transport.tcp.TcpTransportServer.run 
> (TcpTransportServer.java:167)
>         at java.lang.Thread.run(Thread.java:595)
>
> So here we see that activemq tries to connect to websphere MQ and  
> fails
> miserably and then every so often, WebsphereMQ tries to connect to  
> Activemq
> and falls down as well.
>
> Any help you can offer would be greatly appreciated.
> -- 
> View this message in context: http://www.nabble.com/ActiveMQ-JMS- 
> Bridge-to-Websphere-MQ-tf4489485s2354.html#a12803797
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

-- 
Daryl

"Don't worry about people stealing an idea. If it's original, you  
will have to ram it down their throats."
     -- Howard Aiken