Stubs + Netbeans + Wsgen + JAX-WS + versões

0 respostas
aix

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.

Criado 18 de maio de 2012
Respostas 0
Participantes 1