Spring整合Blazeds实现Weblogic JMS消息服务

      在以前的博客中讲了Spring+Blazeds+ActiveMq实现JMS消息服务,weblogic的jms配置请参考我的weblogic下创建JMS消息服务。

      blazeds的消息实现机制跟activemq是一样的,只需要配置好weblogic的jms模板。

      配置信息如下,其他的配置跟activemq是完全一样的。

     

     

<!-- JNDI 模板 如果不用jndi则需要注释掉该bean -->
	<bean id="JmsJndiTemplate" class="org.springframework.jndi.JndiTemplate">
		<property name="environment">
			<props>
				<!-- com.sun.enterprise.naming.SerialInitContextFactory -->
				<prop key="java.naming.factory.initial">
					weblogic.jndi.WLInitialContextFactory
				</prop>
				<prop key="java.naming.provider.url">
					${jms.weblogic_url}
				</prop>
				<prop key="java.naming.factory.url.pkgs"> 
          			weblogic.jndi.factories 
        		</prop> 
				
			</props>
		</property>
	</bean>
	 <!-- JMS连接工厂 jndi方式例如 weblogic -->
	<bean id="JmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
		<property name="jndiName">
			<value>${jms.weblogic_factory}</value>
		</property>
		<property name="jndiTemplate">
			<ref bean="JmsJndiTemplate"></ref>
		</property>
	</bean>
	
	 <!-- JMS连接工厂 brokerURL方式 例如ActiveMQ
	<bean id="JmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
		<property name="brokerURL" value="tcp://localhost:61616"></property>
	</bean>
	-->
	
	<!--JMS Topic目的地 JNDI方式-->
	<bean id="JmsDestination" class="org.springframework.jndi.JndiObjectFactoryBean">
		<property name="jndiName">
			<value>${jms.weblogic_topic}</value>
		</property>
		<property name="jndiTemplate">
			<ref bean="JmsJndiTemplate"></ref>
		</property>
	</bean>
	
	
	<!--JMS Topic目的地 例如 ActiveMQ
	<bean id="JmsDestination" class="org.apache.activemq.command.ActiveMQTopic">
		<constructor-arg index="0" value="TopicFlex"></constructor-arg>
	</bean>
	-->
	<!-- JMS模板 -->
	<bean id="JmsTemplate" class="org.springframework.jms.core.JmsTemplate">
		<property name="connectionFactory" ref="JmsConnectionFactory"/>
		<property name="defaultDestination" ref="JmsDestination"/>
	</bean>
</beans>

相关推荐