升级WebSphere类路径JAR后无法连接ActiveMQ Classic问题咨询
问题:升级WebSphere类路径JAR包后无法连接ActiveMQ Classic
环境详情
原使用JAR包:
- activemq-client-5.14.5.jar
- hawtbuf-1.11.jar
- slf4j-api-1.7.13.jar
更新后JAR包:
- activemq-client-5.17.6.jar
- hawtbuf-1.11.jar
- slf4j-api-1.7.36.jar
当前配置
外部初始上下文工厂:
org.apache.activemq.jndi.ActiveMQInitialContextFactory
报错信息
WebSphere中抛出的错误:
ERROR com.temenos.t24browser.servlets.FormFieldInputFilter - java.lang.UnsupportedClassVersionError: JVMCFRE199E bad major version 55.0 of class=org/apache/activemq/jndi/ActiveMQInitialContextFactory, the maximum supported major version is 52.0; offset=6 –
疑问
是否需要添加额外JAR包,或修改外部初始上下文工厂?
解决方案
错误根源
这个报错是Java版本不兼容导致的:
- 类版本55.0对应Java 11,而你的WebSphere环境仅支持最高版本52.0(对应Java 8)
- activemq-client-5.17.6是基于Java 11编译的,无法在Java 8环境的WebSphere中加载
具体处理步骤
降级ActiveMQ客户端版本
将activemq-client-5.17.6.jar替换为兼容Java 8的最新稳定版,比如activemq-client-5.15.15.jar(这是ActiveMQ 5.x系列最后一个支持Java 8的版本)。5.17.x及以上版本依赖Java 11+,不适合当前WebSphere环境。无需修改初始上下文工厂
org.apache.activemq.jndi.ActiveMQInitialContextFactory在兼容版本中依然有效,不需要更换。验证SLF4J兼容性
slf4j-api-1.7.36与Java 8兼容,但要确保WebSphere的类路径中没有冲突的旧版SLF4J jar,避免类加载异常。无需新增JAR包
现有hawtbuf-1.11.jar与降级后的activemq-client版本兼容,不需要额外添加其他JAR。
内容的提问来源于stack exchange,提问作者Rahul Bhardwaj
相关产品推荐
相关产品推荐

