Writing a WS cliente
rinconmaradona Mar 31, 2008 1:39 PMHi all,
I'm trying to write a Hello World client for a deployed web service. This subject was addressed a year ago by GenesisD, but the problem was never solved in the forum.
Any way, I hope you can help me, my client:
package demo; import java.net.URL; import javax.xml.namespace.QName; import javax.xml.rpc.Service; import javax.xml.rpc.ServiceFactory; public class demoCliente { public static void main(String[] args) throws Exception { String endpointURL = "http://localhost:8080/orquestador/OrquestadorWS?wsdl"; URL wsdlURL = new URL(endpointURL); String targetNS = "http://webservices.orquestador.cupi2.uniandes/jaws"; QName serviceName = new QName(targetNS, "IOrquestadorWSService"); ServiceFactory factory = ServiceFactory.newInstance(); Service service = factory.createService(wsdlURL, serviceName); IOrquestadorWS orquestador = (IOrquestadorWS) service.getPort(IOrquestadorWS.class); orquestador.receiveItemInformation("Algo"); } }
The error the cliente produces:
Exception in thread "main" java.lang.NoSuchMethodError: org.jboss.ws.utils.JBossWSEntityResolver.getEntityMap()Ljava/util/Map; at org.jboss.ws.utils.JBossWSEntityResolver.resolveNamespaceURI(JBossWSEntityResolver.java:65) at org.jboss.ws.tools.JavaToXSD.parseSchema(JavaToXSD.java:164) at org.jboss.ws.metadata.wsdl.WSDL11Reader.processTypes(WSDL11Reader.java:227) at org.jboss.ws.metadata.wsdl.WSDL11Reader.processDefinition(WSDL11Reader.java:118) at org.jboss.ws.metadata.wsdl.WSDLDefinitionsFactory.parse(WSDLDefinitionsFactory.java:145) at org.jboss.ws.metadata.ServiceMetaData.getWsdlDefinitions(ServiceMetaData.java:273) at org.jboss.ws.deployment.JSR109ClientMetaDataBuilder.buildMetaData(JSR109ClientMetaDataBuilder.java:110) at org.jboss.ws.deployment.JSR109ClientMetaDataBuilder.buildMetaData(JSR109ClientMetaDataBuilder.java:82) at org.jboss.ws.jaxrpc.ServiceImpl.<init>(ServiceImpl.java:96) at org.jboss.ws.jaxrpc.ServiceFactoryImpl.createService(ServiceFactoryImpl.java:157) at org.jboss.ws.jaxrpc.ServiceFactoryImpl.createService(ServiceFactoryImpl.java:128) at demo.demoCliente.main(demoCliente.java:20)
I have cofirmed that this method exists in the class JBossEntityResolver and it's inherited by JBossWSEntityResolver. All of this in the library jbossall-client.jar. THX!!