早上好...... 我此刻完全迷失了。
我的应用程序每5分钟向EMS服务器发送一条JMS消息。在本地tomcat上启动它它工作得很好......但是当我将它部署到我们的PRE环境时,我在尝试将Java对象解析为xml字符串时收到此错误:
Exception in thread "Timer-8" java.lang.NoSuchMethodError: org.codehaus.stax2.XMLStreamWriter2.closeCompletely()V
at com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator.close(ToXmlGenerator.java:1091)
at com.fasterxml.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:3633)
at com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:2998)
at es.adif.icecof.ems.JmsHeartbeatSender.sendMessage(JmsHeartbeatSender.java:67)
at es.adif.icecof.common.ThreadHeartbeat$1.run(ThreadHeartbeat.java:42)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
到底发生了什么事?
非常感谢...
答案 0 :(得分:1)
我遇到了同样的问题,结果发现我在类路径上有Jackson 1.x和2.x版本以及Woodstox的旧版本。
解决方案是浏览依赖项列表并删除所有具有org.codehaus.jackson
groupId的依赖项,以及wstx-asl
依赖项。