WebService: funciona OK, as vezes não  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
cristiano.m.almeida
What is classpath?
[Avatar]

Membro desde: 31/07/2008 15:10:54
Mensagens: 5
Localização: São Paulo
Offline


Olá pessoal!

Bom, já encontrei a solução para muitos problemas por aqui no GUJ, agora é minha vez de perguntar!

Estou finalizando um sistema que posteriormente será locado para clientes. Esse sistema funcionará com licensa de uso a ser paga mensalmente. Para controlar quem paga e quem deixa de pagar (restringindo o acesso aos inadimplentes) utilizaremos um webService que faz uma consulta simples e retorna um Boolean correspondente à disponibilidade do sistema para uso por determinado usuário.

Código para Login.jws:



Instalei o pacote axi no TomCat 5.5, implementei a classe do webService (Login.java), a renomeei para Login.jws. Fiz o teste do webService. Funciona perfeitamente, tanto em uma aplicação java simples do Eclipse puro quanto em um projeto Dinâmico da Web (Rational Software Architect), rodando em WAS.

Código para UseWS.java (cliente):


Porém, quando importo a classe cliente da aplicação Java simples para o projeto do eclipe puro que contém o sistema que irá chamar o webService (no caso é um sistema J2SE, interface SWING, conexão a banco DB2), ele não funciona. É feita a conexão com o servidor do web service (gera log no TomCat), porém não chega a acessar o corpo do método. Importei corretamente todos os jars de cliente do axi exigidos, e tudo mais. Cheguei até a importar os jars activation e mail para parar de dar a mensagem de warning (e parou). Porém, o web service mesmo, que interessa, continua retornando null...

Saída gerada pelo cliente quando rodado em um projeto eclipse separado:


Saída gerada pelo cliente quando rodado em no projeto do aplicatovo:


*Obs: já tentei exportar o projeto java separado para um jar (utilizando fatJar), importá-lo para o projeto do sistema (mesmo resultado) e também incluir o projeto java separado dentro do build path do projeto do sistema (mesmo resultado).


Cristiano - Desenvolvimento
Invenire International Informática

Fone : (55 11) 3021-6059
E-mail/Msn: invenire@invenire.com.br
Skype: invenire.com.br

http://www.invenire.com.br

[Email] [WWW] [MSN]
Rafael Nunes
Moderador
[Avatar]

Membro desde: 09/10/2003 13:41:06
Mensagens: 2890
Localização: sao bernardo do campo
Offline

Já considerou utilizar REST para seus WebServices?
Levando em conta que isso será locado para os clientes, vai te poupar muuuuuuuita dor de cabeça.

------------------------------------------------------------------
"Think different? I'd be happy if most people would just think..."

http://www.yaw.com.br
http://twitter.com/rafanunes
http://twitter.com/youandwe
[Email]
cristiano.m.almeida
What is classpath?
[Avatar]

Membro desde: 31/07/2008 15:10:54
Mensagens: 5
Localização: São Paulo
Offline

Bom cara, na verdade não... onde entra o REST? no lugar do AXI??

Vou fazer uma pesquisa sobre isso em breve para ver, mas se você tiver algo já mais rápido para indicar, agradeço!!!


Cristiano - Desenvolvimento
Invenire International Informática

Fone : (55 11) 3021-6059
E-mail/Msn: invenire@invenire.com.br
Skype: invenire.com.br

http://www.invenire.com.br

[Email] [WWW] [MSN]
Rafael Nunes
Moderador
[Avatar]

Membro desde: 09/10/2003 13:41:06
Mensagens: 2890
Localização: sao bernardo do campo
Offline

Axis2 já suporta requisições 'REST', CXF você implementar serviços REST, tem alguns outros frameworks: Restlet, Jboss RestEasy, Jersey.

------------------------------------------------------------------
"Think different? I'd be happy if most people would just think..."

http://www.yaw.com.br
http://twitter.com/rafanunes
http://twitter.com/youandwe
[Email]
cristiano.m.almeida
What is classpath?
[Avatar]

Membro desde: 31/07/2008 15:10:54
Mensagens: 5
Localização: São Paulo
Offline

Bom, resolvi o problema, pelo menos pra minha aplicação. Removi um Jar do classpath (gnujaxp.jar), e agora não há mais problemas em conexão. Possivelmente esse jar servia pra alguma coisa, mas pelo menos em tempo de compilação e execução básicas não encontro problema.

Mas, claro, se ela estava ali, era por alguma razão. A pergunta que fica agora é a seguinte:

Já que tenho rodando meu web service em um servidor TomCat com Axi, há algum outro conjunto de jars para o cliente (sem ser os do Axi) para poder acessar esse web service? Digo isso porque acredito que esteja acontecendo um problema entre o jar do axi e o gnujaxp.jar... E realmente não pretendo deixar a aplicação seguir pra produção sem esse jar... arriscado demais, já que o sistema é um tanto quanto grande e é quase impossível saber ao certo a que parte dele esse jar se refere...

Bom, por enquanto é só.

Att, Cristiano

Cristiano - Desenvolvimento
Invenire International Informática

Fone : (55 11) 3021-6059
E-mail/Msn: invenire@invenire.com.br
Skype: invenire.com.br

http://www.invenire.com.br

[Email] [WWW] [MSN]
mcncicco
Entusiasta Java

Membro desde: 03/07/2008 10:53:45
Mensagens: 16
Offline

Estou com este mesmo problema. Web service, axis.jar e gnujaxp.jar conflitando.
Não posso simplismente excluir o gnujarxp.jar

Alguém sabe a solução??
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team