WSDL - Web Services

7 respostas
C

Olá pessoal,

Recebi do cliente dois arquivos WSDL e dois XSD, gostaria de saber se tem como gerar as classes .java apartir desses arquivos. Lembrando que eu não tenho acesso a URL para gerar através do Wizard do Eclipse, esse arquivos estão “OFFLINE” em minha máquina.

7 Respostas

danielJaponeis

Cara que eu me lembre pra gerar a palhaçada toda (proxy, binding, etc) precisa ter acesso a url.

Você não consegue conectar no endpoint?

mas então como você irá testar ou algo do tipo?

tenta acessar, o endereço fica dentro do wsdl mesmo.

Alexandre_Saudate

É perfeitamente possível gerar a implementação, desde que a estrutura no seu filesystem esteja correta. Dê uma olhada no wsimport, ele consegue gerar as classes necessárias a partir do filesystem sem problemas.

[jabá]
Meu livro SOA Aplicado mostra como fazer isso.
[/jabá]

[]'s

C

Alexandre Saudate:
É perfeitamente possível gerar a implementação, desde que a estrutura no seu filesystem esteja correta. Dê uma olhada no wsimport, ele consegue gerar as classes necessárias a partir do filesystem sem problemas.

[jabá]
Meu livro SOA Aplicado mostra como fazer isso.
[/jabá]

[]'s

Cara tentei via wsimport com o seguinte comando (wsimport -keep -verbose D:…\Arquivo.wsdl) e não obtive muito sucesso, obtive o seguinte erro:

[WARNING] schema_reference.4: Failed to read schema document ‘http://localhost:8080/infranetwebsvc/(“NOME DO PROJETO”)?xsd=1’, because 1) could not find the d
ocument; 2) the document could not be read; 3) the root element of the documentis not xsd:schema. line 6 of file:/D:/EMPRESA/(“NOME DO PROJETO”).wsdl#types?schema1

C

danielJaponeis:
Cara que eu me lembre pra gerar a palhaçada toda (proxy, binding, etc) precisa ter acesso a url.

Você não consegue conectar no endpoint?

mas então como você irá testar ou algo do tipo?

tenta acessar, o endereço fica dentro do wsdl mesmo.

Infelizmente não temos acesso ainda, quando entrar em fase de homologação no cliente nós iremos ter acesso, enquanto isso só irei fazer referencias aos metodos dele e em homologação testo.

Alexandre_Saudate

colix:
Alexandre Saudate:
É perfeitamente possível gerar a implementação, desde que a estrutura no seu filesystem esteja correta. Dê uma olhada no wsimport, ele consegue gerar as classes necessárias a partir do filesystem sem problemas.

[jabá]
Meu livro SOA Aplicado mostra como fazer isso.
[/jabá]

[]'s

Cara tentei via wsimport com o seguinte comando (wsimport -keep -verbose D:…\Arquivo.wsdl) e não obtive muito sucesso, obtive o seguinte erro:

[WARNING] schema_reference.4: Failed to read schema document ‘http://localhost:8080/infranetwebsvc/(“NOME DO PROJETO”)?xsd=1’, because 1) could not find the d
ocument; 2) the document could not be read; 3) the root element of the documentis not xsd:schema. line 6 of file:/D:/EMPRESA/(“NOME DO PROJETO”).wsdl#types?schema1

Essa mensagem acontece porque você está tentando referenciar o schema pela rede. Altere a seção types do WSDL para achar o schema pelo filesystem e tente novamente.

[]'s

C

Alexandre Saudate:
colix:
Alexandre Saudate:
É perfeitamente possível gerar a implementação, desde que a estrutura no seu filesystem esteja correta. Dê uma olhada no wsimport, ele consegue gerar as classes necessárias a partir do filesystem sem problemas.

[jabá]
Meu livro SOA Aplicado mostra como fazer isso.
[/jabá]

[]'s

via wsimport com o seguinte comando (wsimport -keep -verbose D:…\Arquivo.wsdl) e não obtive muito sucesso, obtive o seguinte erro:

[WARNING] schema_reference.4: Failed to read schema document ‘http://localhost:8080/infranetwebsvc/(“NOME DO PROJETO”)?xsd=1’, because 1) could not find the d
ocument; 2) the document could not be read; 3) the root element of the documentis not xsd:schema. line 6 of file:/D:/EMPRESA/(“NOME DO PROJETO”).wsdl#types?schema1

Essa mensagem acontece porque você está tentando referenciar o schema pela rede. Altere a seção types do WSDL para achar o schema pelo filesystem e tente novamente.

[]'s

Dentro da TAG types tem schemaLocation e namespace devo alterar os dois?
Outra dúvida a TAG service tem dentro dela soap:adress que também referencia a rede, este também deve ser alterado/


Cara consegui, pode ajudar dizendo aonde eles são gerados?

Alexandre_Saudate

Eles são gerados, normalmente, no mesmo diretório onde você invocou o wsimport. Mas você pode alterar isso com a opção -s .

[]'s

Criado 16 de abril de 2013
Ultima resposta 17 de abr. de 2013
Respostas 7
Participantes 3