2012-10-04 3 views
0

J'ai un client de service Web jax-ws généré qui s'exécute correctement lorsque je l'exécute en tant que projet Java autonome. Toutefois, si je l'ajoute à une application Web (guerre) déployé sur JBoss 7.1.1 et appeler le service web, il jette l'exception suivante:Impossible d'appeler le client JAX-WS déployé sur JBoss 7.1.1

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) 

idée de ce que peut manquer?

+0

Quelle bibliothèque utilisez-vous pour votre client jax-ws? JBoss utilise cxf, donc si vous fournissez vos propres fichiers cxf, il peut y avoir des problèmes de chargement de classe. Pouvez-vous essayer d'utiliser le JBoss comme prévu jax-ws libs? – Kazaag

+0

Mon client jax-ws ne dispose que de classes api jax-ws et ne dépend pas de l'implémentation. –

Répondre

1

Comme l'erreur l'indique, le serveur d'applications est incapable de trouver le fichier de classe. Est-il possible dans votre application autonome que votre classpath dispose de la bibliothèque, mais JBoss AS 7 est incapable de le trouver.

Si vous pouvez isoler l'emplacement de cette bibliothèque, vous pouvez l'associer à votre fichier WAR ou créer un jboss_module pour satisfaire la dépendance.

Bonne chance!

+0

Ressemble à un problème de bibliothèque StAX. –

Questions connexes