I'm using Spring Jms from Spring2.5.6, My JBoss server is 4.2.3
Here's the configure file
My testing code failed on jmsTemplate.convertAndSend, the reason is can't open connection:Code:<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> <property name="environment"> <props> <prop key="java.naming.factory.initial"> org.jnp.interfaces.NamingContextFactory </prop> <prop key="java.naming.provider.url"> jnp://localhost:1099 </prop> <prop key="java.naming.factory.url.pkgs"> org.jboss.naming:org.jnp.interfaces </prop> </props> </property> </bean> <!-- spring JMS definition --> <bean name="jmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiTemplate" ref="jndiTemplate"/> <property name="jndiName" value="ConnectionFactory" /> </bean> <bean id="jmsTransactionManager" class="org.springframework.jms.connection.JmsTransactionManager"> <property name="connectionFactory" ref="jmsConnectionFactory" /> </bean> <!-- jms destination already defined in jboss --> <bean name="testDestination" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiTemplate" ref="jndiTemplate"/> <property name="jndiName" value="queue/testQueue" /> </bean> <!-- jmsTemplate for client --> <bean name="jmsTemplate" class="org.springframework.jms.core.JmsTemplate"> <property name="connectionFactory" ref="jmsConnectionFactory" /> <property name="defaultDestination" ref="testDestination" /> <property name="receiveTimeout" value="1" /> <property name="messageConverter" ref="auditingMsgConverter" /> </bean>
The same JNDI context configuration worked when using Java JMS codes. Therefore I know JBoss is running well.java.lang.AbstractMethodError: org.jboss.mq.SpyConnectionFactory.createConnection ()Ljavax/jms/Connection;
at org.springframework.jms.support.JmsAccessor.create Connection(JmsAccessor.java:184)
at org.springframework.jms.core.JmsTemplate.execute(J msTemplate.java:461)
at org.springframework.jms.core.JmsTemplate.send(JmsT emplate.java:539)
at org.springframework.jms.core.JmsTemplate.convertAn dSend(JmsTemplate.java:617)
....
Any suggestion? Thx


Reply With Quote
