SpringIntegration2.1.3およびSpring3.0.5と統合されたactivemq3.7およびactivemqpool3.7ライブラリを使用しています。このようにconnectionFactoryを定義しようとすると、以下の例外が発生しました
<bean id="connectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
<property name="targetConnectionFactory">
<bean class="org.apache.activemq.pool.PooledConnectionFactory"
destroy-method="stop">
<property name="connectionFactory">
<bean class="org.apache.activemq.pool.PooledConnectionFactory" destroy-method="stop">
<constructor-arg name="brokerURL" value="${jms.broker.url}" />
</bean>
</property>
</bean>
</property>
<property name="sessionCacheSize" value="10" />
<property name="cacheProducers" value="false" />
</bean>
例外は次のとおりです。
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'connectionFactory' defined in class path resource
[META-INF/integration-context.xml]:
Cannot create inner bean 'org.apache.activemq.pool.PooledConnectionFactory#1445748'
of type [org.apache.activemq.pool.PooledConnectionFactory]
while setting bean property 'targetConnectionFactory'; nested exception is
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'org.apache.activemq.pool.PooledConnectionFactory#1445748'
defined in class path resource [META-INF/integration-context.xml]:
Initialization of bean failed;
nested exception is java.lang.reflect.MalformedParameterizedTypeException
PooledConnectionFactoryの代わりにActiveMQConnectionFactoryを使用すると、すべてが正常にデプロイされますが、パフォーマンスに問題があります。