当前位置: 首页 > 知识库问答 >
问题:

使用Spring与QueueConnectionFactory的Apache Camel JMS连接

安聪
2023-03-14

我查看了Apache Camel Jms连接的各种示例,并试图找出是否可以将自定义Jms提供程序的QueueConnectionFactory连接到我的JMSComponent?

<bean id="customQueueConnectionFactory" class="QueueConnectionFactoryImpl"/>

<bean id="authenticatedConnectionFactory" class="org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter">
  <property name="targetConnectionFactory" ref="customQueueConnectionFactory"/>
  <property name="username" value="username"/>
  <property name="password" value="password"/>
</bean>


<bean id="jms" class="org.apache.camel.component.jms.JmsComponent"> 
  <property name="connectionFactory" ref="authenticatedConnectionFactory"/> 
</bean>
QueueConnectionFactoryImpl.createConnection(Ljava/lang/String;Ljava/lang/String;)Ljavax/jms/Connection;
    at org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter.doCreateConnection(UserCredentialsConnectionFactoryAdapter.java:175)
    at org.springframework.jms.connection.UserCredentialsConnectionFactoryAdapter.createConnection(UserCredentialsConnectionFactoryAdapter.java:150)
    at org.springframework.jms.support.JmsAccessor.createConnection(JmsAccessor.java:184)
    at org.springframework.jms.listener.AbstractJmsListeningContainer.createSharedConnection(AbstractJmsListeningContainer.java:405)
    at org.springframework.jms.listener.AbstractJmsListeningContainer.establishSharedConnection(AbstractJmsListeningContainer.java:373)
    at org.springframework.jms.listener.DefaultMessageListenerContainer.establishSharedConnection(DefaultMessageListenerContainer.java:767)
    at org.springframework.jms.listener.AbstractJmsListeningContainer.doStart(AbstractJmsListeningContainer.java:280)
    at org.springframework.jms.listener.AbstractJmsListeningContainer.start(AbstractJmsListeningContainer.java:265)
    at org.springframework.jms.listener.DefaultMessageListenerContainer.start(DefaultMessageListenerContainer.java:568)
    at org.apache.camel.component.jms.JmsConsumer.startListenerContainer(JmsConsumer.java:105)
    at org.apache.camel.component.jms.JmsConsumer.prepareAndStartListenerContainer(JmsConsumer.java:171)
    at org.apache.camel.component.jms.JmsConsumer.doStart(JmsConsumer.java:155)

有什么提示吗?我使用的是Spring版本3.2.4和Apache Camel版本2.12.2

共有1个答案

翟京
2023-03-14

camel-jms使用Spring JMS,所以您只需以Spring的方式连接它。乍一看,您的spring 看起来不错。

记住在Camel中使用“jms”作为组件名称,因为这是您给组件的id。

 类似资料:
  • 我有(假设)以下服务器为我的应用程序;我的工作与MySQL。 1) 应用程序使用的数据库(服务器位于日本) 2)数据库备份(服务器位于秘鲁) 3)紧急数据库(服务器位于美国) 关于Spring的功能,我有几个问题: A) 如何在所有数据源中同时持久化? 如何在Spring中创建连接池,以便如果我的第一个数据源没有响应,系统会自动与第二个数据源一起工作? 这是我实际的 问候

  • 因此,在aws实例中,我们尝试将spring kafka与msk连接起来,在msk中使用本地kafka。接下来没有ssl。我试着用telnet运行它。但是在运行应用程序时,出现了这个异常。 我们的msk集群在同一个vpc中。所有代理连接配置字符串都正常

  • Spring Boot新手尝试将我的应用托管在第二代GCP AppEngine Flexible with Cloud SQL(mysql)上。 使用我从这里获得的Spring Cloud GCP启动器:https://github.com/spring-cloud/spring-cloud-gcp/tree/master/spring-cloud-gcp-samples/spring-cloud

  • 我有以下设置: null 它应该每3秒轮询一次Mongo,但它实际上从来没有这样做(再次,它在本地工作没有问题)。 之后连接工作良好,因为我有另一个由文件上传触发的进程,它工作正常(数据被写入MongoDB)。 老实说,我有点困惑是哪个组件在这里出了问题,所以我希望你能帮我缩小范围。

  • 我必须将我的Spring客户端与Elasticsearch连接,Elasticsearch的图像已由Elastic在Docker Hub中的官方ES 2.4.6图像拍摄,但当我尝试运行容器时,Docker控制台向我报告以下错误: [Glitch]无法连接到节点[{{transport}-1}{localhost}{127.0.0.1:9300}],已从节点列表中删除 应用程序。我的Spring项目

  • 我使用Spring教程创建了一个单页应用程序,使用AngularJS和OAuth创建一个单页应用程序,可以在以下位置找到:https://Spring . io/guides/tutorials/Spring-security-and-angular-js/# _ multiple _ ui _ applications _ and _ a _ gateway _ Single _ Page _