You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by KoenM <ko...@aclvb.be> on 2008/10/22 10:19:18 UTC
Re: Websphere MQ configuration
this is a late reply, but maybe this could be usefull for some others. :-)
“invalid security authentication supplied for MQQueueManager”
or the full error:
"org.springframework.jms.JmsSecurityException: MQJMS2013: invalid security
authentication supplied for MQQueueManager; nested exception is
javax.jms.JMSSecurityException: MQJMS2013: invalid security authentication
supplied for MQQueueManager; nested exception is com.ibm.mq.MQException:
MQJE001: An MQException occurred: Completion Code 2, Reason 2035 MQJE036:
Queue manager rejected connection attempt"
states out that the request for access to the queue is short of
authentication properties. in case of Tomcat JNDI registry: you cannot set
the username/password property.
the following settings work fine for me on Tomcat6.0 and MQ on iSeries,
usings tomcat jndi registration and spring JMS
context:
<Context path="/some-server" docBase="some-server" debug="5"
reloadable="true" crossContext="true" antiJARLocking="true">
<!-- JMS SUPPORT FOR MQSeries - The connection factory -->
<Resource
name="jms/MQConnectionFactory"
auth="Container"
type="com.ibm.mq.jms.MQQueueConnectionFactory"
factory="com.ibm.mq.jms.MQQueueConnectionFactoryFactory"
description="JMS Queue Connection Factory for sending messages"
HOST=<host>
PORT=<port>
CHAN=<channel>
TRAN="1"
QMGR=<queue manager> />
<!-- JMS SUPPORT FOR MQSeries - the queue to send to -->
<Resource
name="jms/MQReader"
auth="Container"
type="com.ibm.mq.jms.MQQueue"
factory="com.ibm.mq.jms.MQQueueFactory"
description="JMS Queue for sending messages"
QU=<queue> />
<!-- JMS SUPPORT FOR MQSeries - the queue to read from -->
<Resource
name="jms/MQWriter"
auth="Container"
type="com.ibm.mq.jms.MQQueue"
factory="com.ibm.mq.jms.MQQueueFactory"
description="JMS Queue for receiving messages"
QU=<queue> />
</Context>
you can define the security using spring via the
UserCredentialsConnectionFactoryAdapter:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:jms="http://www.springframework.org/schema/jms"
xmlns:jee="http://www.springframework.org/schema/jee"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/jms
http://www.springframework.org/schema/jms/spring-jms-2.5.xsd
http://www.springframework.org/schema/jee
http://www.springframework.org/schema/jee/spring-jee-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<!-- ************************************************************** -->
<!-- JMS queue setting to talk to JNDI defined MQSeries connections -->
<!-- ************************************************************** -->
<!-- Wrap the jndi connectionFactory in a Spring JndiObject -->
<bean id="internalJMSQueueConnectionFactory"
class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jms/MQConnectionFactory</value>
</property>
</bean>
<!-- Wrap the connectionFactory in order to be able to add security on
creation time -->
<bean id="jmsQueueConnectionFactorySecured"
class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
<property name="targetConnectionFactory"
ref="internalJMSQueueConnectionFactory" />
<property name="username" value="******" />
<property name="password" value="******" />
</bean>
<!-- Reading -->
<!-- Rip the destination right out of JNDI -->
<jee:jndi-lookup id="jmsDestinationResolverReader"
jndi-name="java:comp/env/jms/MQReader" resource-ref="true" />
<!-- JMS Queue Template -->
<bean id="jmsReader" class="org.springframework.jms.core.JmsTemplate102">
<!-- Factory creating the connections -->
<property name="connectionFactory">
<ref bean="jmsQueueConnectionFactorySecured" />
</property>
<!-- Use defaultDestination in order to be able to use JNDI directly -->
<property name="defaultDestination">
<ref bean="jmsDestinationResolverReader" />
</property>
<!-- We are accessing queue: so false -->
<property name="pubSubDomain">
<value>false</value>
</property>
<!-- Wait a meaningFull time for response -->
<property name="receiveTimeout">
<value>60000</value>
</property>
</bean>
<!-- Writing -->
<!-- Rip the destination right out of JNDI -->
<jee:jndi-lookup id="jmsDestinationResolverWriter"
jndi-name="java:comp/env/jms/MQWriter" resource-ref="true" />
<!-- JMS Queue Template -->
<bean id="jmsWriter" class="org.springframework.jms.core.JmsTemplate102">
<!-- Factory creating the connections -->
<property name="connectionFactory">
<ref bean="jmsQueueConnectionFactorySecured" />
</property>
<!-- Use defaultDestination in order to be able to use JNDI directly -->
<property name="defaultDestination">
<ref bean="jmsDestinationResolverWriter" />
</property>
<!-- We are accessing queue: so false -->
<property name="pubSubDomain">
<value>false</value>
</property>
<!-- Wait a meaningFull time for response -->
<property name="receiveTimeout">
<value>60000</value>
</property>
</bean>
<!-- ************************************************************** -->
<!-- Beans injected with JMSQueueing -->
<!-- ************************************************************** -->
<!-- Bean used for sending messages -->
<bean id="rvaSender" class="somepackage.Sender">
<property name="jmsTemplate102">
<ref bean="jmsWriter" />
</property>
</bean>
<!-- Bean used for receiving messages -->
<bean id="rvaReceiver" class="somepackage.Receiver">
<property name="jmsTemplate102">
<ref bean="jmsReader" />
</property>
</bean>
</beans>
--
View this message in context: http://www.nabble.com/Websphere-MQ-configuration-tp18585525p20106071.html
Sent from the Axis - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-user-help@ws.apache.org