【问题标题】:Unable to call JAX-WS client deployed on JBoss 7.1.1无法调用部署在 JBoss 7.1.1 上的 JAX-WS 客户端
【发布时间】:2012-10-04 13:32:40
【问题描述】:

我有一个生成的 jax-ws Web 服务客户端,当我将它作为 Java 独立项目运行时,它运行良好。但是,如果我将其添加到部署在 JBoss 7.1.1 上的 Web 应用程序(war)并调用 Web 服务,则会引发以下异常:

Caused by: java.lang.NoClassDefFoundError: com/ctc/wstx/io/DefaultInputResolver
at com.ctc.wstx.stax.WstxInputFactory.createSR(WstxInputFactory.java:628)
at com.ctc.wstx.stax.WstxInputFactory.createXMLStreamReader(WstxInputFactory.java:324)
at __redirected.__XMLInputFactory.createXMLStreamReader(__XMLInputFactory.java:139) [jboss-modules.jar:1.1.1.GA]
at org.apache.cxf.staxutils.StaxUtils.createXMLStreamReader(StaxUtils.java:1176)
at org.apache.cxf.interceptor.StaxInInterceptor.handleMessage(StaxInInterceptor.java:104)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:795)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1626)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1493)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1401)
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:648)
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)
at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:531)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:461)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:364)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:317)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:88)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:134)
at $Proxy189.getcodelists(Unknown Source)

知道我可能缺少什么吗?

【问题讨论】:

  • 您为您的 jax-ws 客户端使用什么库? JBoss 使用 cxf,因此如果您提供自己的 cxf jar,可能会出现一些类加载问题。您可以尝试使用 JBoss 作为提供的 jax-ws 库吗?
  • 我的 jax-ws 客户端只有 jax-ws api 类,没有实现依赖。

标签: jboss jax-ws jbossws


【解决方案1】:

正如错误所说,应用服务器无法找到所述类文件。是否有可能在您的独立应用程序中您的类路径具有该库但 JBoss AS 7 无法找到它。

如果你可以隔离这个库的位置,你可以将它与你的 WAR 文件捆绑在一起,或者创建一个jboss_module 来满足依赖关系。

祝你好运!

【讨论】:

  • 看起来像 StAX 库问题。
猜你喜欢
  • 2012-11-15
  • 1970-01-01
  • 1970-01-01
  • 2012-09-19
  • 2010-11-09
  • 1970-01-01
  • 2012-05-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多