Ola amigos,
tenho seguinte trecho de código que nada mais é do que invocar o consumo de um ws.
teste:
public class TesteWSCliente {
public static void main(String args[]) {
WsMerco.Clx40332NfeXml cnx = new WsMercosul.Clsx40332NfeXml();
cnx.getClx40332NfeXmlSoap();
}
}
esqueleton:
static {
ClX40332NFEXML_WSDL_LOCATION = WsMerco.Clx40332NfeXml.class.getResource("https://portalnfe.WsMercosul.Clsx40332NfeXml.com.br/Gnfe_Port_Ws_Merco_sul.Clsx40332NfeXml.asmx?WSDL");
WebServiceException e = null;
if (ClX40332NFEXML_WSDL_LOCATION == null) {
e = new WebServiceException("Cannot find 'https://portalnfe.WsMercosul.Clsx40332NfeXml.com.br/Gnfe_Port_Ws_Merco_sul.Clsx40332NfeXml.asmx?WSDL' wsdl. Place the resource correctly in the classpath.");
}
ClX40332NFEXML_EXCEPTION = e;
}
OBS: (alterei o nome do wdls pois a empresa não me pertimiu postar a url do ws original):
Erro:
Exception in thread “main” javax.xml.ws.WebServiceException: Cannot find ‘<a href="https://portalnfe.WsMercosul.Clsx40332NfeXml.com.br/Gnfe_Port_Ws_Merco_sul.Clsx40332NfeXml.asmx?WSDL">https://portalnfe.WsMercosul.Clsx40332NfeXml.com.br/Gnfe_Port_Ws_Merco_sul.Clsx40332NfeXml.asmx?WSDL</a>’ wsdl. Place the resource correctly in the classpath.
at WsMercosul.Clsx40332NfeXml.(WsMercosul.Clsx40332NfeXml.java:32)
at xml.TesteWSCliente.main(TesteWSCliente.java:15)
Java Result: 1
Pergunto: nos fontes antigos da empresa eu peguei os stubs comparei com os meus e havia diferença na geração, o solução que tive para poder colocar o serviço no ar foi pegar os .class dos stubs e substituir dentro do meu .war, funcionou, porém se alterarem o webservice e caso eu venha precisar gerra os novos stubs como posso fazer que que a WSDLLOcation não fique nulo? e evite este erro? abraços.