Tô tentando invocar um método por webservice mais não estou conseguindo, não sei se o axis2 impede chamadas por get-post (url) na aplicação cliente com os Stubs tudo funciona, mais ñ consigo invocar pela url…
public class WSPesquisa {
public String pesquisaCpfCnpj(String cpfCnpj){
// implementacao....
}
}
To usando o Axis2, e esta classe esta ‘deployada’ como WSPesquisa.aar na pasta service dentro do Axis2.
Quando eu chamo pela url aparece a seguinte mensagem:
<soapenv:Reason xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
<soapenv:Text xml:lang="en-US">
The endpoint reference (EPR) for the Operation not found is /Axis2/services/WSPesquisa?method=pesquisaCpfCnpj&cpfCnpj=0123456789 and the WSA Action = null
</soapenv:Text>
</soapenv:Reason>
Alguem sabe o que eu preciso fazer para conseguir acessar o metodo por url ??/
Amigo, usar Axis2 em 2011 já é heresia. Desse jeito que você está tentando, nem se fala.
Você tem duas alternativas: usar assim, pela request, é possível usando serviços REST. Você poderia tentar dar uma olhada. Ou você pode montar uma request, certinha, pro seu serviço Axis (caso não saiba como, use uma ferramenta chamada soapUI que ela monta algumas requests de exemplo). Ah, e você tem que passar os argumentos via POST (não via GET).
Bom o que precisava mesmo era acessar pelo browser (aplicação legada chamando outra aplicação prehistorica(dataflex[nada contra quem usa]), o via get eu viajei… eu consegui chamar o método porem não to conseguindo enviar os parametros, que ao meu ver devia ser o mais facil…
[quote=asaudate]Amigo, usar Axis2 em 2011 já é heresia. Desse jeito que você está tentando, nem se fala.
[]´s[/quote]
heresia? bom, estou começando nesse mundo de webservices, e axis2 me pareceu bem razoável.
ele já te dá o xml, depois basta manipulá-lo para fazer uso.
Eu uso ainda plugins no Eclipse que fazem tudo, basta eu escrever as Classes que eu quero.
Eu concordo que usar uma ‘baita’ ferramenta que é o axis2 por posturl via browser é bizzarro, mas o axis2 ñ.
ñ concordo que seja uma heresia o axis2 em si, mas sim a forma q tava tentando chamar… agora a opiniao asaudete ñ sei… porem tem varias opções mais recentes, se não me engano o proprio java6 tem varios recursos nativos para vc criar um webservice com anotação e outras coisas que simplificação o processo de deployar um servico ws, porem o axis2 tem um war muito bom para vc gerenciar e ate descer alguns sevicos/metodos sem ter que parar a aplicação dentre outras coisas!!!
[quote=Priuli]Eu concordo que usar uma ‘baita’ ferramenta que é o axis2 por posturl via browser é bizzarro, mas o axis2 ñ.
ñ concordo que seja uma heresia o axis2 em si, mas sim a forma q tava tentando chamar… agora a opiniao asaudete ñ sei… porem tem varias opções mais recentes, se não me engano o proprio java6 tem varios recursos nativos para vc criar um webservice com anotação e outras coisas que simplificação o processo de deployar um servico ws, porem o axis2 tem um war muito bom para vc gerenciar e ate descer alguns sevicos/metodos sem ter que parar a aplicação dentre outras coisas!!![/quote]
De fato, o Java 6 possui algumas anotações já nativas que levam ao uso do JAX-WS, que é a especificação “padrão” do Java para se trabalhar com Web Services. O melhor dos mundos, hoje em dia, é usar JAX-WS em um Application Server, e escolher entre as implementações que existem à disposição (Apache CXF, Metro, a própria RI, etc.). Com o Java 6 somente é possível criar e executar um web service tranquilamente, mas um Application Server te dá toda a capacidade multi threading que ele já tem embutida, além de facilitar (muito) a transformação do seu web service em EJB.
Quanto às razões que me levam a dizer o quanto eu não gosto do Axis2, basta dar uma olhada aqui para entender o porque, OK? Caso você tenha maiores dúvidas a respeito, a gente debate um pouco melhor a respeito.
O suporte da apache para o axis2 nunca foi dos melhores msm e bem lento, quando apliquei o uso do axis2 em 2009, tinha um bug bizarro no axis2 c ñ me engano na versao 1.5 na hora de gerar os stubs e demoram pra arrumar, a versão mais estável que me lembre era a versão 1.3 sem bugs, agora faz um tempo q usei, realmente fiz uns testes com o java6 ws e é animall… mas parando para pensar que o axis 1 era bugado pakas, o axis2 veio para corrigir a cagada anterior, seria melhor começar um do zero´p/ ñ sujar + o nome hehehe tai o Apache CXF q estou devendo para min msm mais foco .
Voltando ao axis nunca tive problemas com a versão 1.3(época q usei) do axis2 para o que eu precisei, funcionava perfeitamente e o axis2.war para gerenciar os serviços ajudaram bastante no meu uso, ñ tenho o q reclamar. Mas eu parei na panela velha, porem hj já iria rever o q tem d novo no mercado, c precise destas funcionalidades, mas acho q continua sendo uma boa opção o axis2 para muitas coisas ainda!!
Ok, eu olhei rapidamente o JAX-WS2 exemplos e tutoriais por aí e percebi que ele por si só, não seta o xml do jeito que o AXIS2 o faz nem constrói o wdsl.
Existe algum plugin que faça isso por mim?
[quote=cleliodpaula]Ok, eu olhei rapidamente o JAX-WS2 exemplos e tutoriais por aí e percebi que ele por si só, não seta o xml do jeito que o AXIS2 o faz nem constrói o wdsl.
Existe algum plugin que faça isso por mim?
Abraço.[/quote]
cleliodpaula, o JAX-WS gera sim o WSDL. Como você está tentando usar?