spring 连sonic mq时会有如下的配置
<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
<property name="environment">
<props>
<prop key="java.naming.factory.initial">
com.sonicsw.jndi.mfcontext.MFContextFactory
</prop>
<prop key="java.naming.provider.url">tcp://192.168.1.1:2506</prop>
<prop key="java.naming.security.principal">Administrator</prop>
<prop key="java.naming.security.credentials">Administrator</prop>
<prop key="com.sonicsw.jndi.mfcontext.domain">Domain1</prop>
<prop key="com.sonicsw.jndi.mfcontext.idleTimeout">10000</prop>
</props>
</property>
</bean>
<!-- JMS连接工厂 -->
<bean id="connectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean" >
<property name="jndiName" value="seashellSonicSendXAConnectionFactory" />
<property name="jndiTemplate" ref="jndiTemplate" />
</bean>
<bean id="cachedConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory" destroy-method="destroy">
<property name="targetConnectionFactory" ref="connectionFactory"/>
</bean>我现在直接用代码把cachedConnectionFactory new出来。发现其setTargetConnectionFactory方法接收的参数类型是ConnectionFactory 而非配置文件中指向的的JndiObjectFactoryBean类型。
问题:
1、如何才能new出cachedConnectionFactory 然后完成 JndiObjectFactoryBean的加载(配置的加载)?
2、spring是如何完成的转换?跪求解答~不胜感激!!~~
<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
<property name="environment">
<props>
<prop key="java.naming.factory.initial">
com.sonicsw.jndi.mfcontext.MFContextFactory
</prop>
<prop key="java.naming.provider.url">tcp://192.168.1.1:2506</prop>
<prop key="java.naming.security.principal">Administrator</prop>
<prop key="java.naming.security.credentials">Administrator</prop>
<prop key="com.sonicsw.jndi.mfcontext.domain">Domain1</prop>
<prop key="com.sonicsw.jndi.mfcontext.idleTimeout">10000</prop>
</props>
</property>
</bean>
<!-- JMS连接工厂 -->
<bean id="connectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean" >
<property name="jndiName" value="seashellSonicSendXAConnectionFactory" />
<property name="jndiTemplate" ref="jndiTemplate" />
</bean>
<bean id="cachedConnectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory" destroy-method="destroy">
<property name="targetConnectionFactory" ref="connectionFactory"/>
</bean>我现在直接用代码把cachedConnectionFactory new出来。发现其setTargetConnectionFactory方法接收的参数类型是ConnectionFactory 而非配置文件中指向的的JndiObjectFactoryBean类型。
问题:
1、如何才能new出cachedConnectionFactory 然后完成 JndiObjectFactoryBean的加载(配置的加载)?
2、spring是如何完成的转换?跪求解答~不胜感激!!~~
解决方案 »
- 什么是软件实施工程师
- Tomcat下的工程如何在weblogic下发布?
- 我在论谈上老是看到学好编程首先学好基础,但是基础包括哪些?
- jsp/jsf页面显示的问题:根据session显示或不显示某些内容,不想内嵌片段<%%>代码
- 求救:读写信用卡是否用同步方法?
- JEE框架研究组织(高级群)扩招有JEE开发经验者!
- 关于二级分类,三级分类 和 连动下拉菜单
- 怎么学习JDOM啊
- 做好日本外包软件应该注意些什么?
- 请问import与继承的区别,在线等候
- 急!!tomcat启动报错:Error configuring application listener of class com.mot.rbt.listen
- 急求一条oracle sql
如果一个bean实现了 FactoryBean接口,那么Spring就不会把该bean本身实例化并返回,而是返回该bean的getObject()返回的对象。这是Sprign的游戏规则。