-
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
相关推荐
5. **配置消息源和目的地**:在Spring配置中,为队列或主题创建bean,这些bean可以被`JmsTemplate`或`MessageListenerContainer`使用。 6. **发送和接收消息**:使用`JmsTemplate`可以方便地发送消息,而消息的接收...
**配置WebLogic JMS与Spring的步骤** 1. **安装和启动WebLogic Server**: 首先确保你已经安装并配置好WebLogic Server,可以通过控制台或命令行工具启动服务器。 2. **创建JMS模块和资源**: 在WebLogic管理控制台...
Spring 整合 Weblogic JMS 是一种非常有用的技术,可以为应用程序提供高性能、可靠性和灵活性的消息传递机制。 知识点: * Spring 整合 Weblogic JMS 的优点 * JMS 服务器配置 * Spring 配置 applicationContext-...
- Spring的`DefaultMessageListenerContainer`或`SimpleMessageListenerContainer`可以配置为监听WebLogic Server上的JMS队列或主题。 4. **消息处理的实现**: - 创建一个实现了`MessageListener`接口的类,该类...
本话题主要探讨如何在Spring框架下与WebLogic 9.2集成,实现JMS(Java Message Service)消息的发送。 首先,JMS是一种标准的API,用于在分布式环境中传递消息。通过JMS,应用可以在异步和解耦的方式下进行通信,...
本文将详细介绍如何在Spring中配置两种不同的方式来获取WebLogic JNDI数据源。 #### 一、本地WebLogic Server获取 这种方式适用于当Spring应用与WebLogic服务器在同一台物理机器上运行时的情况。在这种模式下,...
在WebLogic中,你需要配置JMS模块、目的地(队列或主题)、以及相关的连接工厂和目的地工厂。 1. **创建JMS模块**:在WebLogic管理控制台中,选择“服务”->“JMS”->“JMS模块”,点击“新建”创建一个新的JMS模块...
本人开发的spring jms项目,已经上线近一年了,这里是我项目jms配置文件,使用的是spring jms 整合weblogic jms。如果真的需要,请咨询我,并且附上我上传的这个配置文件,附近中没有带有这个文件,一律不作任何回答...
Weblogic JMS 依赖jar包是Oracle公司的中间件产品Weblogic Server中用于...在开发过程中,理解JMS的原理和Weblogic JMS的配置细节,以及正确引用和使用这些jar包,对于成功地在Weblogic 11g上实现消息服务至关重要。
本篇将深入讲解如何在WebLogic服务器中配置Spring的数据源(Datasource),以便应用程序能够高效、安全地访问数据库。 首先,了解数据源在Java EE环境中的作用至关重要。数据源是连接数据库的一种抽象,它提供了一...
WebLogic Server 是一款由 Oracle 公司提供的企业级 Java 应用服务器,它支持 Java Message Service (JMS),一个标准的 Java API,用于在...正确配置后,JMS 服务器能为你的应用程序提供可靠的异步通信和消息传递能力。
总的来说,JMS入门实例结合WebLogic的安装和配置,为初学者提供了一个了解和实践Java消息服务的完整流程。通过这个过程,开发者可以学习到如何在WebLogic这样的企业级应用服务器上构建可靠的消息传递系统,以及如何...
WebLogic与JMS+Spring的整合利用了WebLogic的稳定性和JMS的异步通信能力,结合Spring的灵活性和易用性,为开发高效、可扩展的企业级应用提供了强大的基础。通过详细的配置和测试,开发者可以确保系统能够正确地处理...
这个"springboot集成weblogic的jms源码.zip"压缩包提供了将Spring Boot应用与WebLogic的JMS服务集成的示例代码。 首先,我们来看`JmsConfiguration.java`文件。这是一个配置类,通常用于设置与JMS相关的bean。在...
本教程将深入探讨如何在Linux环境下配置Weblogic集群以及Weblogic JMS集群,这对于提高应用程序的可用性和可扩展性至关重要。 首先,让我们了解一下Weblogic集群的基本概念。Weblogic集群是指一组独立的Weblogic...
配置WebLogic的数据源是为应用程序提供数据库连接的关键步骤。现在,我们详细探讨WebLogic_JMS和配置数据源的相关知识点。 1. **WebLogic JMS服务**: - **概念**:WebLogic JMS服务允许应用程序创建、发送、接收...
- **配置JNDI环境**:首先需要配置JNDI(Java Naming and Directory Interface)环境,以便应用程序能够查找和使用JMS资源。这通常通过WebLogic控制台完成。 - **创建连接工厂**:定义一个JNDI名称,并将其映射到一...
本文将深入探讨如何在Spring框架下配置JMS,并结合WebLogic 8.1这个J2EE容器进行实践。我们将围绕标题“jms.rar_weblogic8_spring_jms”以及描述中的关键信息展开。 首先,让我们理解JMS的核心概念。Java消息服务...
自己写好的一个简单的weblogic jms的简单实现,包括点对点的实现,以及topic的实现,适合初学者参考
WebLogic 9.2配置JMS(Java Message Service)涉及一系列步骤,主要目的是为了实现分布式消息传递,包括点对点的Queue模式和发布/订阅的Topic模式。在本例中,我们将专注于配置发布/订阅模式,即Topic。以下是详细的...