WebServices qual usar?

30 respostas
robson_vs

Estou desenvolvendo uma aplicação com ejb3 mais precisarei criar um WebService para disponibilizar uns dados para um cliente web.

Sei que exite varios FrameWorks para criação de WebServices mais gostaria de saber qual deles devo adotar? pq depois terei q fazer outras aplicações usando a mesma arquitetura.

Qual é de maior facilidade de aprendizado e seguro estas coisas?

Vale a todos.

Robson

30 Respostas

danieldestro

EJB3?

@WebService public class SuaClasse { //seus métodos }

robson_vs

Daniel mais como ficaria a separação dos meus projetos???

rbamartins

JAXWS da Sun.

E demais, APACHE AXIS (muito bom), CODEHAUS XFire(muito bom tb), tanto em um quando no outro a geração dos clientes é bem fácil e rápida.

R

Tbem aconselho o Axis.
Simples, prático e eficaz.
Mas vale a pena verficar detalhes sobre BUGS na integração com WEBServices .Net

giu

se estiver fazendo tudo jee 5 vale o webservice padrão do Java.

pcalcado

Tem que ser um WebService SOAP? Que tal um REST?

danieldestro

Apache Axis é uma droga.
Ele faz o que promete, mas a um custo alto demais.

Você viu como foi simples fazer com EJB 3 (@WebService).

robson_vs, separação de quê???

R

danieldestro:
Apache Axis é uma droga.
Ele faz o que promete, mas a um custo alto demais.

Você viu como foi simples fazer com EJB 3 (@WebService).

robson_vs, separação de quê???

Uma droga?! Acho que vc não chegou a usar, na prática, o produto.

A anotação EJB 3.0 para WEBServices é sem dúvida uma boa opção, agora, pra quem não quer depender disso e quer uma boa ferramenta, o Axis resolve e muito.

danieldestro

Se eu já usei Axis.

Bem, digamos que a troca de informações entre os diversos sistemas de uma grande empresa (líder nacional no setor), é feito com Apache Axis, e eu que defini isto. Na época não tinha opção melhor.

Hoje é muito mais fácil fazer com qualquer coisa do que com Apache Axis.

Só o fato de ele gerar uma implementação específica das classes que transportam os dados e ainda não fornecer uma implementação da classe que deveria implementar o WebService, e você ter de fazer isso na mão, já é o suficiente para eu achar o Axis uma droga.

Luca

Olá

danieldestro:
Bem, digamos que a troca de informações entre os diversos sistemas de uma grande empresa (líder nacional no setor), é feito com Apache Axis, e eu que defini isto. Na época não tinha opção melhor.

Hoje é muito mais fácil fazer com qualquer coisa do que com Apache Axis.

Exato!

Aliás, eu fui um dos que assisti seu tutorial de web services com AXIS e gostei muito.

O cara usar AXIS 1 em um sistema legado é até admissivel. Mas adotar em um projeto novo é tolice. O próprio AXIS 2 é muito melhor.

Mas é como o Daniel disse: há várias outras opções que podem e devem ser avaliadas, inclusive o JAX-WS 2.1.1 (melhor do que o 2.0 que vem com JEE 5).

[]s
Luca

von.juliano

Aqui na empresa eu uso o XFire, é prático e fácil de usá-lo (até parece que eu tô fazendo propaganda :lol: ), já cheguei a usar o Axis e não gostei, o XFire faz o mesmo, de forma bem mais simples.

B

Fiquei na dúvida!!! Acredito que cada aplicação é um caso. No meu caso, preciso desenvolver uma aplicação J2SE que apenas consome serviços. Qual a melhor opção, o q vcs usariam? Axis2, XFire, …

Luca

Olá

Nada disto, apenas Java 6.

Veja isto:
http://java.sun.com/developer/technicalArticles/J2SE/jax_ws_2_pt2/

[]s
Luca

R

Eu usaria AXIS.

B

Valeu galera! Agradeço a todas as respostas, e acho que vou acabar usando Java 6 mesmo. Depois dar uma lida no artigo, me pareceu mais fácil que o Axis, ainda mais que estou usando Netbeans no desenvolvimento. T+ :wink:

B

Galera, agradeço as respostas, e acho que vou acabar usando os recursos do Java 6 mesmo. Depois de ler o artigo indicado pelo nosso amigo, me pareceu mais fácil do que a utilização do Axis2. Ainda mais que eu desenvolvo usando o NetBeans! Valeu!!! :wink:

B

Caro Luca, estou tendo algumas pequenas dificuldades com jax-ws 2.0. Seguinte, eu conectei minha aplicação a um web service como fala no tutorial indicado por vc. Até aí blz, só que eu não consigo chamar o serviço na minha classe. Fiz o exemplo do tutorial e deu certo, só que na minha aplicação não dá!

O serviço que minha aplicação precisa consumir foi escrito em perl, será que o problema pode estar aí? Porém eu tenho certeza que esses serviços funcionam, pois tem uma aplicação feita em delphi que os utiliza e tudo corre bem.

Luca

Olá

Bruno, não caia na esparrela de que WS é simples e que tudo pode ser gerado com qualquer Netbeans da vida.

Há 5 estágios no aprendizado de Web Services:

1 :arrow: Moleza, o HelloWorld funcionou! É Simple Object Access Protocol.

2 :arrow: Vou ler TUDO. Tutoriais no DevelopersWorks, Infoq, SOAP, WSDL, UDDI, WS-isto, WS-aquilo, SAAJ, JAX-carajo e tudo o mais. Depois vou seguir um exemplo usando Netbeans para gerar tudo.

3 :arrow: Pô, caraca, #$%^&*@S, não acredito que esta meleca seja tão complicada

4 :arrow: PQP, todo diz que usa porque só eu não consigo?

5 :arrow: Hummm, agora entendi tudo perfeitamente. Esta merda é complexa demais. Será que com Apache XML-RPC ou com REST não fica mais simples?

Não tem jeito. Web Services com Java é sofrido mesmo.

Precisa estudar muito, apanhar, tentar vários frameworks como eu mesmo já indiquei vários, para finalmente entender que isto é coisa do demo que inventaram para gerar hora de programador.

Mas não desanime, deixe que seu chefe enfarte antes. Mas verifique a possibilidade de usar REST ou XML-RPC só para ter a coisa pronta.

[]s
Luca

B

Com certeza, alias quase tudo no java necessita de muito estudo. Mas o que vc acha que pode ser o problema? Me dê apenas uma luz! Será que é por que o serviço foi escrito em perl e o arquivo wsdl não foi gerado pelo java?

Outra coisa, quando eu expando o serviço em projects, ele não mostra os métodos disponíveis como nos exemplos que fiz.

Luca

Olá

Web Services usando a parafernália SOAP/WSDL&WS-* são complexos em qualquer ambiente. Por isto falei de REST.

Quando você já tem o WSDL criado por outros, você usa ele para gerar as classes Java. O problema não deve ser o WSDL do Perl porque você disse que com Delphi funcionou.

Sobre o Netbeans é melhor você tentar ajudar de quem entende deste treco. Já viu os tutoriais lá no site deles?

[]s
Luca

bebad

vix maria fiquei ate com medo agora.
:shock: :shock: :shock: :shock: :shock:

rbamartins

XFire. Simples e fácil.

luis.txt

Pessoal,

Preciso criar um web service para acesso a bd, apenas para efetuar consultas simples e devolver o resultado em uma String.
Como nao tenho experiência com ws queria saber a opiniao de vcs sobre qual web service usar…

obs: já fiz o tutorial usando axis

newj

Amigos,

Desculpem a pergunta de iniciante, mas como eu faço para interligar o ESB com o Web Service, ou o Axis 2 já implementa o ESB?

Obrigado.

Luca

Olá

luis.txt:
Pessoal,

Preciso criar um web service para acesso a bd, apenas para efetuar consultas simples e devolver o resultado em uma String.
Como nao tenho experiência com ws queria saber a opiniao de vcs sobre qual web service usar…

obs: já fiz o tutorial usando axis

Use REST.

[]s
Luca

newj

newj:
Amigos,

Desculpem a pergunta de iniciante, mas como eu faço para interligar o ESB com o Web Service, ou o Axis 2 já implementa o ESB?

Obrigado.

Olá amigos, alguém saberia me responder se o Axis 2 já implementa o ESB?

rollei

JAX-WS 2.algumacoisa

foi o unico que eu usei, mas eu gostei muito. Nao posso fazer muitas comparacoes

EDIT
eu usei o netbeans para fazer o ws e achei estremamente facil.

webservice que eu fiz era bem simples apenas acesso a dados no banco e retorno desses dados para o cliente. o que mais me deu trabalho foi fazer as consultas sql porque eram um pouquinho complicadas, mas o que deu mais trabalho mesmo era porque as consultas estavam MUITO pesadas e tive que acabar fazendo uma view materializada

o .wsdl e o .xsd o netbeans me gerou automaticamente

luis.txt

eu usei somente o java 6 sem servidor de aplicacao nem web container e funcionou da maneira como precisava… e foi rápido e simples de fazer, pois minha aplicacao tambem era somente para acesso a banco.

eu usei as ferramentas apt e wsimport (presentes na pasta bin do jdk 6) através de comando e meu projeto rodou direto do eclipse… sem precisar me preocupar com outras configurações… foi bem mais simples que axis…

rollei

luis.txt:
eu usei somente o java 6 sem servidor de aplicacao nem web container e funcionou da maneira como precisava… e foi rápido e simples de fazer, pois minha aplicacao tambem era somente para acesso a banco.

eu usei as ferramentas apt e wsimport (presentes na pasta bin do jdk 6) através de comando e meu projeto rodou direto do eclipse… sem precisar me preocupar com outras configurações… foi bem mais simples que axis…

se teu WebService nao estiver num servidor de aplicacao como tu vai acessar ele de fora?

luis.txt

mas aí que está… eu preciso implementar apenas a parte cliente…
e com o java6 foi possível disponibilizar o serviço para minha rede…
para testar uma aplicação…

mas realmente para implementar o servidor com ele não será possível…

eu estou pensando em estudar REST, vi falar que é bastante usado pelos grandes sites…
mas parece que ele nao segue o SOAP… se eu for fazer a parte servidor da minha aplicacao eu preciso de transmitir em algum tipo de xml.

Alguem tem algumas informações sobre o rest ou algum bom tutorial?

Criado 12 de junho de 2007
Ultima resposta 17 de jul. de 2008
Respostas 30
Participantes 13