Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Gerando os stubs através do WSDL

Gerei os stubs do WSDL dos correios (http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx?WSDL) através do wsimport: wsimport -s src/ -p br.com.caelum.correios.soap http://ws.correios.com.br/calculador/CalcPrecoPrazo.asmx?WSDL e depois gerei através do wizard eclipse (Web Service Client). Porém, o comando wsimport gera mais classes do que o eclipse. Porquê?

Outra dúvida. Qual a diferença entre os trechos:

CalcPrecoPrazoWSSoap cliente = new CalcPrecoPrazoWS().getCalcPrecoPrazoWSSoap(); e

CalcPrecoPrazoWSSoap cliente = new CalcPrecoPrazoWSLocator().getCalcPrecoPrazoWSSoap();

A classe CalcPrecoPrazoWSLocator não foi gerada pelo comando wsimport.

2 respostas
solução!

Fala aí Franclayton, tudo bem?

O motivo de gerar classes diferentes é que o eclipse não usa o wsimport para gerar o cliente. Seu eu não me engano ele usa a ferramenta wsdl2java ( do projeto apache cxf) para gerar os clientes . Enquanto o wsimport é do projeto metro.

A resposta da sua segunda dúvida é justamente o motivo de serem gerados por ferramentas diferentes. Por isso ter uma classe a mais ou a menos. A estratégia de geração do cliente é diferente nas duas ferramentas.

Espero ter ajudado e bons estudos.

Fernando, estou bem e vc?

Entendi o motivo.

Obrigado pela resposta.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software