将ActiveMQ集成到Liferay中的春季问题

问题描述 投票:1回答:2

我正在修改使用服务层的基于Maven的Liferay Portlet(6.1.1)。

我的需要是将ActiveMQ侦听器添加到portlet(用于与外部产品进行通信)。

我正在尝试使用集成的spring引擎(3.0.7)来实例化侦听器。

因此,首先,在ext-sping.xml(由Liferay自动管理)内部,我定义了以下bean:-连接工厂:org.apache.activemq.ActiveMQConnectionFactory-缓存连接工厂(org.springframework.jms.connection.CachingConnectionFactory),其中targetConnectionFactory引用先前的bean。

在部署时,我得到的错误是:

Cannot convert value of type [org.apache.activemq.ActiveMQConnectionFactory] to 
required type [javax.jms.ConnectionFactory] for property 
'targetConnectionFactory': no matching editors or conversion strategy found

显然org.apache.activemq.ActiveMQConnectionFactory实现了javax.jms.ConnectionFactory,实际上,如果我尝试通过代码设置值,则部署成功完成。

在我的[[pom.xml中,我尝试同时向activemq-core(仅activemq)或activemq-all(还包含[[javax.jms包)添加依赖项,但没有成功。

怎么可能?谢谢
java spring activemq liferay-6 spring-jms
2个回答
2
投票
在命令行上用-verbose运行,以查看从哪个jar类加载。

0
投票
在Jar下方,我在我的书房中activemq-all-5.8.0.jarjms.jarconnector.jar

我尝试删除连接器和jms.jar以解决冲突,但没有帮助

原因:org.springframework.beans.ConversionNotSupportedException:无法将类型“ org.apache.activemq.ActiveMQConnectionFactory”的属性值转换为属性“ destination”的必需类型“ javax.jms.Destination”;嵌套异常是java.lang.IllegalStateException:无法将[org.apache.activemq.ActiveMQConnectionFactory]类型的值转换为属性“ destination”的必需类型[javax.jms.Destination]:未找到匹配的编辑器或转换策略

谢谢,

热门问题
推荐问题
最新问题