问题标签 [spring-jms]
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.
jms - Spring 批处理 JMS 编写器/读取器示例
任何人都知道一个很好的资源来详细(比 Spring Batch 文档)查看 Spring Batch 中 JMS Item Writer/Reader 的使用?
具体来说,因为我的任务是尝试重用一个现有系统,其唯一接口是在队列上异步的,所以我想知道以下是否可能:
第 1 步:读取一些数据并构建消息。
第 2 步:使用 JMSItemWriter 将消息放到队列中。
第 3 步:使用响应队列上的 JMSItemReader 等待消息返回。
第 4 步:做一些其他的事情
……冲洗并重复,每天几千次。
或者换句话说,本质上是使用 Spring Batch 来强制与异步资源进行同步交互。在我进一步研究之前,我想确保这是 A) 可能的,并且 B) 不会无耻地滥用框架,这会导致未来的严重头痛。
在此先感谢您的任何信息。
spring - ThreadPoolTaskExecutor 和 JMS 中只使用了一个线程
我在 JBoss 5.1 下有一个 JMS 消息侦听器,由 Spring 配置。虽然 ThreadPoolTaskExecutor 配置为核心池大小为 15,但我看到只有一个线程在处理请求,其他线程在等待。根据ThreadPoolExecutor API,我需要有一个有界队列,但我不知道 spring 是如何允许我这样做的。
这是配置:
这是 14 个等待线程的堆栈跟踪:
请注意,这可能类似于Spring ThreadPoolTaskExecutor 仅运行一个线程,但在我的情况下,核心池大小大于 1。
java - 为什么Spring有类JdbcDaoSupport,却没有类似的类JmsSupport?
为什么Spring 框架有JdbcDaoSupport
需要 aDataSource
并在JdbcTemplate
内部创建 a 的类,但没有JmsSupport
可能需要JMS ConnectionFactory
并创建 a 的类似类JmsTemplate
?
据我了解,类的目的JdbcDaoSupport
是消除应用程序上下文中JdbcTemplate
(每个实例一个)的冗余实例。DataSource
相反,容器创建应用程序 DAO 的实例,每个实例都派生自JdbcDaoSupport
,接受一个唯一的DataSource
并将其提供DataSource
给JdbcDaoSupport
父实例,而父实例又将其提供给其内部的JmsTemplate
.
为什么 Spring 不提供一个类似的类JmsSupport
来减少JmsTemplate
应用程序上下文中的实例数量?
activemq - 如何在队列上设置 ActiveMQ redeliveryPolicy?
如何在队列上的 ActiveMQ 中设置 redeliveryPolicy?
1)在文档中,请参阅:activeMQ Redelivery,说明您应该在 ConnectionFactory 或 Connection 上设置它。但我想为不同的队列使用不同的值。
2)除此之外,我似乎没有得到它的工作。像这样在 Spring 的连接工厂中设置它(我正在使用 activemq 5.4.2. 和 Spring 3.0)似乎没有任何效果:
我还尝试将其设置为已定义队列上的属性,但这似乎也被忽略了,因为重新传递发生得比定义的值更早:
谢谢
spring - JmsTransactionManager 具有更多的 connectionFactories
我想知道是否有人可以帮助我解决一个大问题,我正在尝试使用 Spring 2.5.6 实现更多 jmsTransactionManagers,但它不起作用。
我有 5 个连接工厂,因为我必须从 5 个不同的环境中读写。它们都在我的队列 xml bean 中,但是因为当我从一个队列中读取消息并且它们不适合选项时,我会使用事务管理器进行回滚。
所以我的问题是,如何配置更多的 JmsTransactionManagers。
java - 如何线程池化 Spring JMS 监听器
我正在按如下方式设置一个 JMS 订阅者侦听器,目的是实现一个由 5 个线程组成的池来侦听 topATopic,但是,我在运行时看到的是多个消费者处理同一条记录(recordCount*#of 消费者)。
考虑到我是春天的新手,我假设我做错了什么。
有人可以指出我实现目标的方向吗?
java - 帮助 Spring 和 JMS。我正在尝试使用 spring 设置一个简单的发布者?
所以我有以下出版商:
所以我现在坚持设置 bean 声明。我知道我需要一个 JMSTemplate:
但我不知道如何设置连接工厂或目的地。spring 文档中甚至没有示例。
java - 使用 TransactionManager 使用 Spring JmsTemplate 编写消息
使用 Spring-JMS,可以通过DefaultMessageListenerContainer在外部事务上下文中接收消息。
但是,编写消息的唯一记录方式是 via JmsTemplate.send(…)
,我看不出如何强制它使用给定的TransactionManager
.
谁能指出我正确的方向?
更多信息:确保事务管理器可用 ( WebSphereUowTransactionManager
),JmsTemplate.write
针对 Oracle使用AQjmsFactory.getQueueConnectionFactory(dataSource)
会导致:
因此,虽然我没有理由怀疑下面的建议,但我无法对其进行测试,因为我无法弄清楚如何让 AQ JMS 不尝试提交。当我了解更多信息时会更新。
java - 是否可以在独立的 Java 应用程序上实现 JMS、Spring 和 Tibco EMS?
所以这是我的问题!
我有一个带有身份验证的 Tibco EMS 主题
我有一个独立的应用程序,我想发布和使用来自该应用程序的消息
我想通过 Springs JMSTemplate、Listener 等来做到这一点。
前听众:
}
示例发布者:
公共类 ExampleProducer {
私人 JmsTemplate jmsTemplate;
}
jms.jndi.initialContextFactory=com.tibco.tibjms.naming.TibjmsInitialContextFactory jms.jndi.urlPkgs=com.tibco.tibjms.naming
jms.jndi.providerUrl=tibjmsnaming:/ * ***.net: ***
这可能吗?
谢谢
java - Spring JmsTemplate 和 WebSphere MQ - 忽略 RECEIVE_TIMEOUT_NO_WAIT
我正在使用 Spring JmsTemplate 和 WebSphere MQ(在 WebSphere App Server 内部)。
我创建 JmsTemplate 实例如下:
请注意,我将超时设置为 no_wait (-1)。但是,线程仍然阻塞。
我错过了什么?