autocloseable - ActiveMQManagedConnection (EAP/AMQ) 是否支持自动关闭?
问题描述
我在用:
- 开班
- AMQ(好像是分叉的activemq-5.11.0.redhat……版本)
- EAP 7.2.3
- 在本地调试时,我得到一些带有物理 ActiveMQManagedConnection 的 ~ConnectionProxy
我可以使用“try-with-resources”吗?
我不确定并且认为没有......因为 ActiveMQManagedConnection 5.11.0(我不知道 redhat 发生了什么变化)没有实现 Autoclosable。实现的 javax.resource.spi.ManagedConnection 也没有
我还没有找到这个 EAP ConnectionProxy 的来源。也许它具有自动关闭功能。
解决方案
如果您在 OpenShift 上使用 Red Hat AMQ 6(基于 ActiveMQ 5.x),那么您将被困在 JMS 1.1 上。javax.jms.Connection
JMS 1.1中的不扩展java.lang.AutoCloseable
. Red Hat AMQ 7(基于ActiveMQ Artemis)实现了 JMS 2,并且javax.jms.Connection
在 JMS 2 中扩展了java.lang.AutoCloseable
。
Red Hat JBoss EAP 7.2.3 附带 ActiveMQ Artemis,因此如果您使用它(连同它的 JCA 资源适配器),那么您可以使用 try-with-resources。但是,如果您配置了一个 JCA 资源适配器以与基于 ActiveMQ 5.x 的代理集成,那么您就不能。
推荐阅读
- python-3.x - 如何将两个数据帧与时间戳索引结合起来,覆盖第一行而不是重复行?
- python - 卷积矩阵的适当展开
- python - Python Openpyxl - 提取多行单元格值以执行拆分
- javascript - 优化分页 REST API 数据的收集
- java - Java 使用 unix 套接字连接到 docker
- python - 如何在 Python 中为软件打包附加组件
- file - UrlDownloadToFileA 从不存在的 Url 下载?
- powerquery - Power Query - 将枢轴组合列合并到行中
- docker - kubernates hostPath 类型检查失败不是文件
- database - 使用 mongoose 和 Express 获取请求