Qual classe devo colocar na assintura do meu método pra receber esta lista? Um Bean?
Qual é ‘tipo’ mais adequdo para receber este parametro de entrada ?
A aplicação que vai consumir o WS eh DOT NET.
============================================
Agradeço desde jah a atenção dos colegas, sou neófito em java e preciso de uma ajuda
olá!
sim, vc pode criar um javabean Pessoa, com atributos correspondentes aos elementos XML (email, ddd, etc.)
e a assinatura do seu metodo pode ser um array de objetos da classe Pessoa.
Pedrosa
Crie um bean com os atributos do xml e use o Xtream para transformar em objeto:
Se vai usar Axis, use da forma mais adequada (aqui no GUJ tem um tutorial completo).
Mas acho melhor usar outras ferramentas, mais simples, como XFire ou então a anotação @WebService do EJB3.
Aí eles usam a ferramenta .NET para gerar o cliente deles.
Afinal, no WS não é o cliente que manda como fazer (não deveria ser), mas sim o fornecedor do serviço. E os clientes aderem ao padrão.
alf_f2
Pessoal,
‘First of all’ muito obrigado pelos posts, bom saber que a comunidade de desenvolvedores Java é tão unida…
Tipo consegui gerar WebService com Beans na assinatura dos métodos (gerei pelo Axis mas sem usar JWS).
([u]Daniel, vc tem razão, JWS é meio ruim mesmo, só aceita tipos primitivos, wrappers e Strings[/u])
Não manjo muito mas percebi no WSDL que ele transforma o Beans em tipo simples numa tag …
Por mim eu colocava Beans na assinatura dos métodos e gerava o WS com o AXIS e blz…
[color=blue]O que vcs acham mais certo fazer: (Qual a prática + indicada)
(A) um método que possui Beans na assinatura dos métodos e gerar o WS pelo Axis
(B) fazer um método que recebe um texto (seja String ou outra classe) e a partir do texto processa os dados ?
[/color]
andre_udi
ola,
como vc fez pro webserver enviar tipos complexos?
estou tentanto utilizar a api de webservices q veio no java 6 ( sem axis, no braço msm ), mas quando tento enviar um bean ou uma collection tenho um erro de soap encoding. alguma sugestao?
obrigado,
andre
alf_f2
Para gerar o WS com os tipos complexos segui mais ou menos o que está na URL abaixo:
Instalei o Axis. Fiz as classes e o arquivo de deploy.
Coloquei as classes na pasta classes do Axis.
só que o deploy eu não fiz via linha de comando,
fiz uma classe que realiza o deploy.
Espero que tenha te ajudado amigo.
Qualker coisa pergunta ai, blz?
importorg.apache.axis.client.AdminClient;publicclassteste{/** * Metodo que publica o WebService * Colocar as classes na pasta Tomcat 5.5\webapps\axis\WEB-INF\classes\ * e executar * @param args */publicstaticvoidmain(String[]args){AdminClientadmin=newAdminClient();try{Stringx=admin.process(newString[]{"-p","-8080","C:\\eclipse\\Projetos\\testeWSA2\\deploy.wsdd"});System.out.println(x);}catch(Exceptione){e.printStackTrace();}System.out.println("fim");}}