从Java中的WSDL导入Web服务客户端

问题描述:

尝试使用Web服务。从Java中的WSDL导入Web服务客户端

我的项目是Java 6,使用Jboss 4.3.2.GA. 我试过在Eclipse中使用New-> Web Service Client来导入Web服务。 像本教程http://www.craigsprogramming.com/2011/03/tutorial-consume-any-web-service-using.html

但是,当我试图让SOAP客户端在此代码:

WebServiceEscolaSoapStub service = (WebServiceEscolaSoapStub)new WebServiceEscolaLocator().getWebServiceEscolaSoap(); 

我碰到下面的错误。

org.apache.commons.discovery.DiscoveryException: Class org.apache.commons.logging.impl.SLF4JLogFactory does not implement org.apache.commons.logging.LogFactory 
at org.apache.commons.discovery.tools.ClassUtils.verifyAncestory(ClassUtils.java:180) 
at org.apache.commons.discovery.tools.SPInterface.verifyAncestory(SPInterface.java:201) 
at org.apache.commons.discovery.tools.SPInterface.newInstance(SPInterface.java:195) 
at org.apache.commons.discovery.tools.DiscoverClass.newInstance(DiscoverClass.java:579) 
at org.apache.commons.discovery.tools.DiscoverSingleton.find(DiscoverSingleton.java:418) 
at org.apache.commons.discovery.tools.DiscoverSingleton.find(DiscoverSingleton.java:378) 
at org.apache.axis.components.logger.LogFactory$1.run(LogFactory.java:45) 
at java.security.AccessController.doPrivileged(Native Method) 
at org.apache.axis.components.logger.LogFactory.getLogFactory(LogFactory.java:41) 
at org.apache.axis.components.logger.LogFactory.<clinit>(LogFactory.java:33) 
at org.apache.axis.handlers.BasicHandler.<clinit>(BasicHandler.java:43) 
at org.apache.axis.client.Service.getAxisClient(Service.java:104) 
at org.apache.axis.client.Service.<init>(Service.java:113) 
at br.com.portalpitagorasdeeducacao.gestaodeusuarios.Service.WebServiceEscolaLocator.<init>(WebServiceEscolaLocator.java:12)... 

错误很明显。

你在混合两个罐子slf4j和commons-logging。摆脱commons-logging.jar文件。 第二个想法现在删除所有日志记录,只是运行Web服务客户端,看看你是否得到一个输出。稍后您可以添加日志记录。这个错误与webservice错误无关。