Acesso Muito Lento ao WebService JAX-WS em JBOSS

2 respostas
D

Bom dia.
Criei um WebService pelo netbeans, utilizando JAX-WS e fiz o deploy no JBOSS 5.
o sistema esta funcionando corretamente.

Criei um cliente no netbeans para este webservice atraves do endereço onde o JBOSS esta rodando,
O cliente foi criado perfeitamente e acessa os métodos sem erros,
porem ao executar esta linha: "portCadastro = wsCadastro.getCadastroWSPort();"Na melhor das hipoteses
ele demora uns 7 segundos, mas ja vi demorar até uns vinte segundos so nesta linha.

O meu cliente é um Applet assinado, que roda a partir de um servidor Linux utilizando httpd.

Obs1: a chamada do servico, portCadastro.getParametros(), é executado em até 1 segundo.
Obs2: A demora realmente está nesta linha: portCadastro = wsCadastro.getCadastroWSPort();"

Preciso resolver isto urgentemente, mas não tenho nem ideia do que fazer .
Peço ajuda a vocês

2 Respostas

Alexandre_Saudate

Não tem jeito, nesta linha ele começa a traduzir o WSDL para objeto, fazer checagens, etc.

O que você pode fazer é impedir o usuário de ver coisas desse tipo, então, armazene o port numa variável estática (você não está tentando pegar um novo pra cada operação, está?) e, como seu cliente é uma applet, coloque a inicialização de serviços no método init da applet - se você tiver mais de um serviço, seria interessante fazer multi-thread, também.

Enquanto isso, mostre uma mensagem de "carregando… " ou algo assim para o cliente.

[]´s

D

asaudate:
Não tem jeito, nesta linha ele começa a traduzir o WSDL para objeto, fazer checagens, etc.

O que você pode fazer é impedir o usuário de ver coisas desse tipo, então, armazene o port numa variável estática (você não está tentando pegar um novo pra cada operação, está?) e, como seu cliente é uma applet, coloque a inicialização de serviços no método init da applet - se você tiver mais de um serviço, seria interessante fazer multi-thread, também.

Enquanto isso, mostre uma mensagem de "carregando… " ou algo assim para o cliente.

[]´s

Estou criando o port uma vez só, faço a inicialização do serviço com multithread e sendo chamado desde o inicio.
Na hora de criar o cliente webservice para est Applet habilitei a caixa “Gera código de distribuição”.

No pacote jar, estes códigos estão todos lá. E mesmo assim tem esta lerdeza, parece estar querendo montar o que ele já montou

Criado 15 de setembro de 2010
Ultima resposta 15 de set. de 2010
Respostas 2
Participantes 2