5
respostas

WSIMPORT apresentando erro ao gerar código a partir de WSDL

Olá a todos,

Fiz o curso de SOAP com o Nikko e estou agora tentando gerar código com WSIMPORT a partir do WSDL para um projeto da empresa. Porém estou recebendo o seguinte warning:

[WARNING] src-resolve: Cannot resolve the name 'impl:ArrayOf_tns1_IndicadorVO' to a(n) 'type definition' component.

e na hora de compilar apresenta este erro.

package-info.java:1: error: error while writing package-info: could not create parent directories @javax.xml.bind.annotation.XmlSchema(namespace = "http://ws.cnmpind.cnmp.gov.br", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)

O comando que eu usei para gerar é este aqui

wsimport -s c:\ws-cnmp\webservice\src -p ws.client.test http://aplicativoshom.cnmp.mp.br/cnmpind/services/QuestionarioWS?wsdl

O endereço do WSDL está no comando acima.

Consegui pegar o código sem compilar com o parametro "-Xnocompile", e depois compilei com o javac e não apresentou erros. Mas no projeto, ao realizar uma chamada por este webservice, o servidor está retornando os dados (pois consigo analisar os pacotes que chegam), porém o retorno não está populando os objetos no código. Testando com o SOAPUI, ele retorna os dados corretamente. Alguém poderia me dar uma luz? Usei o wsimport da última versão do java 8.

5 respostas

algum moderador poderia colocar este tópico na área correta de JAX-WS ? Eu acabei botando no lugar errado.

Oi Kim,

tenta baixar o WSDL e roda o comando para gerar as classes local, ok?

abs

já fiz nico, o resultado é o mesmo.

Kim, pelo que entendi está dando erro na erro de compilar com wsimport.

vc consegue importar as classes na sua IDE e compilar nela?

abs

Certifique-se que o wsdl não faz import de schemas(xsd). Algumas ferramentas não conseguem baixar os schemas quando você tenta gerar o client passando a URL do WSDL. Caso o WSDL faça imports de schemas então salve o WSDL em uma pasta local e salve também os schemas(acesse a URL do schema e salvando na mesma pasta do WSDL). Não esqueça de alterar o WSDL os locais onde os schemas são importados apontando para o local onde você os salvou. Depois é só tentar gerar novamente o cliente.