-
spring配置weblogic JMS,JmsTemplate为空值?0
spring3.0,weblogic9.2
折腾了2天了一直无头绪,郁闷了
weblogic配置:
connectionFactory的JNDI:JMSFactory
Queue的JNDI:JMSQueue_1、JMSQueue_2
Topic的JNDI:JMSTopic
spring xml配置:<?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:jms="http://www.springframework.org/schema/jms" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/jms http://www.springframework.org/schema/jms/spring-jms.xsd" default-autowire="byName"> <!-- jndiTemplate --> <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> <property name="environment"> <props> <prop key="java.naming.factory.initial"> weblogic.jndi.WLInitialContextFactory </prop> <prop key="java.naming.provider.url"> t3://localhost:7001 </prop> <prop key="java.naming.factory.url.pkgs"> weblogic.jndi.factories </prop> </props> </property> </bean> <!-- jmsConnectionFactory --> <bean id="jmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="JMSFactory"></property> <property name="jndiTemplate" ref="jndiTemplate"></property> <!-- <property name="expectedType" value="javax.jms.TopicConnectionFactory"></property> --> </bean> <!-- jmsDestionation --> <bean id="jmsDestination" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="JMSTopic"></property> <property name="jndiTemplate" ref="jndiTemplate"></property> <!-- <property name="expectedType" value="javax.jms.Topic"></property> --> </bean> <!-- singleConnectionFactory <bean id="singleConnectionFactory" class="org.springframework.jms.connection.SingleConnectionFactory"> <property name="targetConnectionFactory" ref="jmsConnectionFactory"></property> </bean> --> <!-- sender Template --> <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate"> <property name="connectionFactory" ref="jmsConnectionFactory"></property> <property name="defaultDestination" ref="jmsDestination"></property> <!-- <property name="connectionFactory" ref="singleConnectionFactory"></property> <property name="defaultDestination" value="JMSServer-0/SystemModule-0!JMSTopic"></property> <property name="pubSubDomain" value="true"></property> <property name="explicitQosEnabled" value="true"></property> --> </bean> <!-- sender bean --> <bean id="jmsTopicProducter" class="com.xxoo.test.jms.JMSTopicProducter"> <property name="jmsTemplate" ref="jmsTemplate"></property> </bean> </beans>
JMSTopicProducter代码:import java.io.Serializable; import java.util.Map; import javax.jms.JMSException; import javax.jms.Message; import javax.jms.ObjectMessage; import javax.jms.Session; import org.springframework.jms.core.JmsTemplate; import org.springframework.jms.core.MessageCreator; import org.springframework.stereotype.Component; @Component("jmsTopicProducter") public class JMSTopicProducter { private JmsTemplate jmsTemplate; public JmsTemplate getJmsTemplate() { return jmsTemplate; } public void setJmsTemplate(JmsTemplate jmsTemplate) { this.jmsTemplate = jmsTemplate; } public void send(final Map<String, Object> map){ try{ this.jmsTemplate.send(new MessageCreator(){ public Message createMessage(Session arg0) throws JMSException { Message message = arg0.createMessage(); ((ObjectMessage) message).setObject((Serializable) map); return message; } }); }catch (Exception e) { e.printStackTrace(); } } }
谢谢各位2012年8月21日 17:43
1个答案 按时间排序 按投票排序
-
spring配置jms没搞过。但是jms的jndi配置的时候,是不是应该需要容器的用户名、密码呢?也就是jndiTemplate这个bean配置的environment属性,没有用户名、密码是访问不了weblogic的jndi的。
你试一下。因为在没有spring时,一般都是通过如下代码获取weblogic中jndi的Environment environment = new Environment(); environment.setProviderUrl(url); environment.setSecurityPrincipal(username); environment.setSecurityCredentials(password); Context context = environment.getInitialContext(); context.lookup(jndiName);
2012年8月21日 20:27
相关推荐
这是本人搭建的Spring框架,集成了Weblogic JMS,测试已经完成。现提供给大家下载学习。
本人开发的spring jms项目,已经上线近一年了,这里是我项目jms配置文件,使用的是spring jms 整合weblogic jms。如果真的需要,请咨询我,并且附上我上传的这个配置文件,附近中没有带有这个文件,一律不作任何回答...
spring获取weblogic jndi数据源的两种方式,一种本地weblogic server获取,无需用户名、密码、IP和端口等;另一种为从其他weblogic server获取,则必须申明用户名、密码、IP和端口
weblogic中使用JMS发送和接受消息(Queue and TOPIC)
weblogic jms 配置过程 博文链接:https://liyiye.iteye.com/blog/240724
主要介绍了Spring整合Weblogic jms实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
描述了weblogic jms服务器的配置
通过详细的步骤说明(有截图和文字说明),从Weblogic安装到Weblogic集群搭建最后配置Weblogic JMS集群。看不懂的话可以相互交流谢谢。
NULL 博文链接:https://yunzhongxia.iteye.com/blog/615415
自己写好的一个简单的weblogic jms的简单实现,包括点对点的实现,以及topic的实现,适合初学者参考
JMS 简介以及Weblogic配置JMS图解
Weblogic_JMS+配置数据源配置
NULL 博文链接:https://jackaney.iteye.com/blog/1276918
实现了jms的queue和topic,同时也实现了远程传送消息和本地传送消息,另外也分别实现了session的事务和非事务模式,有了这三个例子应该可以满足你的任何关于jms的需求了,由于上传限制,另外还需要下载有个WebLogic包...
webLogic9.2配置JMS步骤,发布/订阅消息发送方式
weblogi 整合 服务器 jms 异步消息 spring 包含weblogic的安装与配置 和在weblogic中配置jms。并有spring和jms的一个测试用例
NULL 博文链接:https://a3mao.iteye.com/blog/313531
在spring下配置jms。J2EE容器为weblogic8.1
本例详细介绍了如何配置JMS服务以及weblogic的安装及在weblogic中配置JMS服务,例子简单易懂,文档含代码,适合初学者学习使用
在Weblogic上配置JMS服务的方法