在mule中配置JMS connectionfactory

在mule中配置JMS connectionfactory,jms,mule,Jms,Mule,有人能建议我如何使用connectionfactory ref在mule中配置connectionfactory吗 我正在尝试使用connectionfactory ref在mule中配置connectionfactory[这是我下面的url::] 在上述文件中-提到- 配置ConnectionFactory 最重要的属性之一是connectionFactory-ref。这是对connectionFactory对象的引用,该对象为JMS提供程序创建新连接。该对象必须实现接口javax.JMS.

有人能建议我如何使用connectionfactory ref在mule中配置connectionfactory吗

我正在尝试使用connectionfactory ref在mule中配置connectionfactory[这是我下面的url::]

在上述文件中-提到- 配置ConnectionFactory

最重要的属性之一是connectionFactory-ref。这是对connectionFactory对象的引用,该对象为JMS提供程序创建新连接。该对象必须实现接口javax.JMS.connectionFactory。

连接工厂

因此,下面是我的mule配置xml

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns:smtps="http://www.mulesoft.org/schema/mule/smtps"
xmlns:scripting="http://www.mulesoft.org/schema/mule/scripting" xmlns:https="http://www.mulesoft.org/schema/mule/https"
xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:jms="http://www.mulesoft.org/schema/mule/jms" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:spring="http://www.springframework.org/schema/beans" version="EE-3.5.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/smtps http://www.mulesoft.org/schema/mule/smtps/current/mule-smtps.xsd
http://www.mulesoft.org/schema/mule/https http://www.mulesoft.org/schema/mule/https/current/mule-https.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/jms http://www.mulesoft.org/schema/mule/jms/current/mule-jms.xsd
http://www.mulesoft.org/schema/mule/scripting http://www.mulesoft.org/schema/mule/scripting/current/mule-scripting.xsd">

<spring:bean name="connectionFactory" class="com.ers.connections.ConnectionFactoryImpl"/>
<jms:activemq-connector name="Active_MQForApex" connectionFactory-ref="connectionFactory"  validateConnections="true" doc:name="Active MQ"/>  
<flow name="apexwritequeueFlow1" doc:name="apexwritequeueFlow1">
<http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" path="niviTest" doc:name="HTTP"/>
<logger message="Payload ::: #[payload]" level="INFO" doc:name="Logger"/>             
<jms:outbound-endpoint queue="ANS.RecOps.Incoming" connector-ref="Active_MQForApex"  doc:name="JMS"/> 
</flow>
</mule>


然而,我得到了这个错误

.Root异常为:不支持的ConnectionFactory类型:com.ers.connections.ConnectionFactoryImpl.type:类java.lang.IllegalArgumentException 错误2014-12-28 11:53:26141[main]org.mule.module.launcher.application.DefaultMuleApplication:null java.lang.IllegalArgumentException:不支持的连接工厂类型:com.ers.connections.ConnectionFactoryImpl

先谢谢你。 非常感谢您的建议。 谢谢你和问候 尼维

如果您没有任何真正好的理由,也没有在文章中说明,那么要编写自己的ConenctionFactory实现,您应该直接使用JMS提供程序提供的实现

所以您应该使用这样的bean定义

<spring:bean id="connectionFactory" 
            class="org.apache.activemq.ActiveMQConnectionFactory">
    <property name="brokerURL" value="tcp://localhost:61616"/>
</spring:bean>

如果您没有任何真正好的理由,也没有在文章中说明,那么要编写自己的ConenctionFactory实现,您应该直接使用JMS提供程序提供的实现

所以您应该使用这样的bean定义

<spring:bean id="connectionFactory" 
            class="org.apache.activemq.ActiveMQConnectionFactory">
    <property name="brokerURL" value="tcp://localhost:61616"/>
</spring:bean>

如果您没有任何真正好的理由,也没有在文章中说明,那么要编写自己的ConenctionFactory实现,您应该直接使用JMS提供程序提供的实现

所以您应该使用这样的bean定义

<spring:bean id="connectionFactory" 
            class="org.apache.activemq.ActiveMQConnectionFactory">
    <property name="brokerURL" value="tcp://localhost:61616"/>
</spring:bean>

如果您没有任何真正好的理由,也没有在文章中说明,那么要编写自己的ConenctionFactory实现,您应该直接使用JMS提供程序提供的实现

所以您应该使用这样的bean定义

<spring:bean id="connectionFactory" 
            class="org.apache.activemq.ActiveMQConnectionFactory">
    <property name="brokerURL" value="tcp://localhost:61616"/>
</spring:bean>

您使用的是ActiveMQ连接器,它需要类型为org.apache.ActiveMQ.ActiveMQConnectionFactory的工厂类。如果您确实需要自定义工厂,则您的ConnectionFactoryImpl类应该扩展ActiveMQ工厂:

import org.apache.activemq.ActiveMQConnectionFactory;

public class ConnectionFactoryImpl extends ActiveMQConnectionFactory {

    // Override the methods you need

}

然后您可以在连接器的connectionFactory ref属性中引用它。

您使用的是ActiveMQ连接器,它需要一个类型为org.apache.ActiveMQ.ActiveMQConnectionFactory的工厂类。如果您确实需要自定义工厂,您的ConnectionFactoryImplclass应扩展activemq工厂:

import org.apache.activemq.ActiveMQConnectionFactory;

public class ConnectionFactoryImpl extends ActiveMQConnectionFactory {

    // Override the methods you need

}

然后您可以在连接器的connectionFactory ref属性中引用它。

您使用的是ActiveMQ连接器,它需要一个类型为org.apache.ActiveMQ.ActiveMQConnectionFactory的工厂类。如果您确实需要自定义工厂,您的ConnectionFactoryImplclass应扩展activemq工厂:

import org.apache.activemq.ActiveMQConnectionFactory;

public class ConnectionFactoryImpl extends ActiveMQConnectionFactory {

    // Override the methods you need

}

然后您可以在连接器的connectionFactory ref属性中引用它。

您使用的是ActiveMQ连接器,它需要一个类型为org.apache.ActiveMQ.ActiveMQConnectionFactory的工厂类。如果您确实需要自定义工厂,您的ConnectionFactoryImplclass应扩展activemq工厂:

import org.apache.activemq.ActiveMQConnectionFactory;

public class ConnectionFactoryImpl extends ActiveMQConnectionFactory {

    // Override the methods you need

}

然后,您可以在连接器的connectionFactory ref属性中引用它。

您的实现可能没有提供任何特殊功能,如果是这种情况,请使用默认连接器:

<jms:activemq-connector name="JmsConnector" specification="1.1" />

但请在需要的时候两次切换,原来的ActuMeq连接器可能提供几乎所有你需要的连接缓存的请求。如果你需要的话,请考虑使用。

你的实现可能不提供任何特殊的特性,如果是这样的话,请只使用默认CON。蜜糖:

<jms:activemq-connector name="JmsConnector" specification="1.1" />

但请在需要的时候两次切换,原来的ActuMeq连接器可能提供几乎所有你需要的连接缓存的请求。如果你需要的话,请考虑使用。

你的实现可能不提供任何特殊的特性,如果是这样的话,请只使用默认CON。蜜糖:

<jms:activemq-connector name="JmsConnector" specification="1.1" />

但请在需要的时候两次切换,原来的ActuMeq连接器可能提供几乎所有你需要的连接缓存的请求。如果你需要的话,请考虑使用。

你的实现可能不提供任何特殊的特性,如果是这样的话,请只使用默认CON。蜜糖:

<jms:activemq-connector name="JmsConnector" specification="1.1" />

但请在需要做的事情上重复两次,原来的ActuMeq连接器可能提供几乎所有你需要的连接缓存的调用。如果你需要的话,请考虑使用。