问题标签 [jmstemplate]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
7527 浏览

java - Spring JMS - 自动装配 JmsTemplate bean 失败

我基于http://bsnyderblog.blogspot.com/2010/02/using-spring-jmstemplate-to-send-jms.html设置了 JMS 应用程序

但是我无法启动tomcat,因为我有以下异常:

我的 JmsSender 类:

}

我的bean配置:

我的另一个spring配置在webapp/WEB-INF/mvc-dispatcher-servlet.xml:

我该如何解决这个问题?IntelliJ Idea 识别 bean jmsTemplate 并且可以轻松地在类和 bean 定义之间导航。

0 投票
1 回答
990 浏览

spring - Spring:JMSTemplate/CachingConnectionFactory 部署无法在 weblogic 中自动启动

我最近更改了我的一些应用程序以使用以下内容:

一切正常,我能够部署我的战争文件并将 JMS 消息发送到队列。

但是,当我的托管服务器重新启动时,会发生一些奇怪的事情。可部署组件都将进入失败状态,这需要我手动启动它们。

这在更改为使用缓存连接工厂、jndi 模板和 jms 模板之后开始发生。

我的 SpringConfig 文件:

应用上下文文件:

应用程序属性文件:

任何人都知道为什么会发生这种情况?我正在使用 Weblogic。任何帮助将不胜感激。

谢谢!

编辑:忘了提到导致失败状态的错误是

0 投票
1 回答
197 浏览

java - JMS (ActiveMQ) - 只有在另一个事件被消费后才被消费的事件

我基本上有2个事件:

UserCreatedEvent.class 和 UserUpdatedEvent.class

我有一个同时产生这两个事件的流程(记住这只是一个例子)是否可以确保(通过一些配置)只有在第一个事件被消费后才会消费第二个事件?(我不希望在处理创建事件之前处理更新事件。)

PS这两个事件正在生成到不同的队列。

最后我想指出我正在使用 JMSTemplate (spring) 来处理事件。与activemq。

0 投票
1 回答
444 浏览

java - JmsTemplate 临时消费者正在挨饿

我正在尝试为我的 JMS 消息创建一个临时消费者(我使用 ActiveMQ)

它看起来像这样:

这个临时消费者应该处理所有失败的消费消息。问题是我在 spring-messaging.xml 中定义的原始 2-3 个消费者不断尝试处理失败的事件并通过重新传递配置重试(重新传递延迟设置为 3 秒,并且重新传递的数量是无限的)

这个消费者应该处理这些消息,但实际上正在挨饿(根本不会收到这些消息,因此

一直返回null。

这是我的豆子:

ps 当我将 p:sessionCacheSize 的配置更改为 1 时:

它有效,但我想使用缓存。

有任何想法吗?

0 投票
1 回答
2138 浏览

java - 无法使用 Spring 的 JmsTemplate 将 JMS 消息发送到 activemq 队列

我是一名开发人员,在拥有大约 5 年的 .NET 经验后重返 Java。虽然我了解 MVC 框架,但我对 Spring MVC 和 Spring 框架完全陌生。

我有一个任务,我打算将实体保存在 activemq JMS 队列上。在发送更复杂的对象之前,我决定先用一个简单的 TextMessage 进行尝试。每次我尝试从映射到视图上的输入按钮控件的控制器发送时,我都会在 Tomcat 中得到一个 java.lang.NullPointerException。除此之外,它没有向我显示太多信息。它只告诉我它的来源来自 ApiMessageSender 类中的这行代码。

spring web mvc web 应用程序中的实现由三个类组成。1) ApiMessageSender.java

2) WebAppConfig.java,其中完成了 Spring IoC 管道。这个类代替了 ApplicationContext.xml 文件,在这个项目中根本没有使用。队列名称是在执行应用程序之前从 ActiveMQ 管理 Web 界面手动创建的。

3) ApiController.java

当在视图上单击按钮时,控制器中的此操作方法将被调用。我已经注释掉了特定的代码片段,以便我可以继续处理其他要求。

这里可能是什么问题?为什么我在这里得到 java.lang.NullPointerException?我怎样才能得到这个工作?非常感谢你。

0 投票
1 回答
1973 浏览

spring - Single JMSTemplate 可以在多个生产者中共享吗?

我想为连接到 ActiveMQ 代理的多个生产者共享 JMSTemplate 的单个实例。示例配置:

我可以使用上面的配置吗?

如此处所述:http: //docs.spring.io/spring/docs/current/spring-framework-reference/html/jms.html

JmsTemplate 类的实例在配置后是线程安全的。这很重要,因为这意味着您可以配置 JmsTemplate 的单个实例,然后安全地将这个共享引用注入到多个协作者中。需要明确的是,JmsTemplate 是有状态的,因为它维护对 ConnectionFactory 的引用,但这种状态不是会话状态。

谢谢,
阿努杰

0 投票
1 回答
326 浏览

spring - JMSTemplate 和收件人列表

我已经阅读了文档,并且看到了一个类似的问题(从 2005 年末开始),但似乎没有人得到答案。(http://forum.spring.io/forum/spring-projects/integration/jms/9152-jmstemplate-oracle-jms

我正在尝试在指定订阅者时使用 JmsTemplate 向主题发送消息,但要么我找不到正确的文档,要么我找不到正确的 API。

是否可以使用 JmsTemplate 实现这样的目标?

如果您需要任何其他信息,请告诉我。

0 投票
2 回答
315 浏览

spring - 使用主题但并非所有消费者都接受消息

我想创建一个发送者来生成消息并将其发送给所有消费者。我正在使用主题,但是出了点问题,例如,如果我有 3 个消费者,则只有一个以随机方式接收消息。我不知道wrog是什么。这是我的服务器配置

还有我的生产者类(只是发送消息的部分)

我的客户端上下文配置:

和java客户端类

0 投票
0 回答
538 浏览

java - JmsTemplate 上的 Websphere 设置关闭连接

我在 JmsTemplate 上做了一些阅读,默认情况下在发送和接收消息后打开和关闭每个连接。顺序是:

打开连接发送/接收消息关闭连接

我有一个场景,应用程序使用 JmsTemplate.receiveSelected() 从队列中读取许多消息,并且需要很长时间。

我使用 org.springframework.jms.connection.SingleConnectionFactory。

然后我尝试了 org.springframework.jms.connection.CachingConnectionFactory,因为它缓存会话、连接和生产者,速度非常快。

我们在 Websphere 上部署我们的应用程序,它负责设置 JMS 连接工厂,因此我们不必选择用于连接队列的连接工厂。

有没有办法配置 Websphere 7.0 以从 Websphere 管理控制台定义 PooledConnectionFactory 或 CachingConnectionFactory?

我们使用 Java 开发,所以也许有一种方法可以禁用默认的 JmsTemplate 打开和关闭连接;而是打开一个连接,从队列中读取许多消息,然后关闭连接,例如:

打开连接

JmsTemplate.receiveSelected() <-禁用默认打开和关闭连接

紧密连接

谢谢

0 投票
0 回答
848 浏览

java - JmsTemplate 用Java打开和关闭连接

谁能给我一个示例,说明如何使用 JmsTemplate 打开和关闭与队列的连接?

目前我正在使用该 receiveSelected()方法从队列中读取大量消息。但是,每次我阅读一条消息时,都会org.springframework.jms.connection.singleconnectionfactory为应用程序读取的每条消息打开和关闭一个连接。

我想打开一个连接,从队列中读取大量消息,然后关闭连接。

谢谢