| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2006 01:19:01
|
obs
Thread.start()
![[Avatar]](/images/avatar/2d5951d1e3b31dfb7fd2dcc172df17fd.png)
Membro desde: 13/04/2005 16:22:22
Mensagens: 40
Localização: Salvador/BA
Offline
|
Bom dia pessoal,
Eu estou com problema, qunado uso o apache Axis 1.4 para gerar wsdl;
O primeiro erro é o seguinte: eu tenho um atributo que é do tipo Character, mas esse tipo não está sendo gerado no wsdl. Ele diz que tipo não pode ser encontrado! e quando o tipo é Integer ele transforma para int.
obs.: para funcionar tive que mudar meus atributos de Character para String. Mas gostaria de usar Character e demais Wrapper classes!
O segundo erro e mais grave é: tenho tipos java.util.Collection como atributos, só que no wsdl fica como ArrayOf_xsd_anyType, e nas classes geradas pelo Axis isso passa a ser um array de objects (Object[]);
Alguem sabe como faz para consumir um web service de objetos complexo que contenha Collection (de preferência com Axis), sem que ela se transforme em objects[]? assim como Wrapper classes (Character)?
Obrigado,
Osmar Barreto
|
"Não se acostume com o que não o faz feliz,revolte-se quando julgar necessário.Alague seu coração de esperanças,mas não deixe que ele se afogue nelas."
Fernando Pessoa.
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2006 07:58:41
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Evite usar Collection em web services. Em vez disso, use os arrays correspondentes, nem que você tenha de usar aquelas APIs da classe java.util.Arrays e java.util.Collections (que convertem Collections em arrays e vice-versa) para passar e receber os valores.
errado: Collection<SuaClasse> atributo
certo: SuaClasse[] atributo
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2006 10:21:31
|
Rafael Nunes
Moderador
![[Avatar]](/images/avatar/d072677d210ac4c03ba046120f0802ec.png)
Membro desde: 09/10/2003 13:41:06
Mensagens: 2890
Localização: sao bernardo do campo
Offline
|
Por que disso, thingol?
|
------------------------------------------------------------------
"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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2006 10:49:22
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Já vi muita gente perder sábados, domingos e feriados porque definiu parâmetros ou valores de retorno em Web Services dessa maneira.
Resumindo: até o Java 1.4, Collection é uma coleção de qualquer coisa, portanto só dá para efetuar uma "serialização" (modo de dizer) para Object. Depois do Java 1.4 dá para você fazer uma Collection de alguma coisa, mas acho que isso não foi propagado direito para o Web Services.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2006 11:33:17
|
Rafael Nunes
Moderador
![[Avatar]](/images/avatar/d072677d210ac4c03ba046120f0802ec.png)
Membro desde: 09/10/2003 13:41:06
Mensagens: 2890
Localização: sao bernardo do campo
Offline
|
Hun, tá certo.
Bregado.
|
------------------------------------------------------------------
"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
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2006 17:16:13
|
obs
Thread.start()
![[Avatar]](/images/avatar/2d5951d1e3b31dfb7fd2dcc172df17fd.png)
Membro desde: 13/04/2005 16:22:22
Mensagens: 40
Localização: Salvador/BA
Offline
|
Eu estou utilizando por exemplo uma classe Autor:
Nela eu tenho um Set de locks, pois essa classe é um DTO que mapeia meus HBMs (Hibernate)
Só que, quando eu gero o web service com o Axis, ele cria algumas classes tipo, stub, skeleton..etc e cria tb uma classe Autor e Lock, mas desse forma:
Então o que você sugere fazer? alterar o Set para Collections ou o Object[] locks para Collections?
Obrigado,
Osmar
|
"Não se acostume com o que não o faz feliz,revolte-se quando julgar necessário.Alague seu coração de esperanças,mas não deixe que ele se afogue nelas."
Fernando Pessoa.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/09/2006 17:46:08
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Poderia ser algo como:
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/09/2006 13:31:28
|
obs
Thread.start()
![[Avatar]](/images/avatar/2d5951d1e3b31dfb7fd2dcc172df17fd.png)
Membro desde: 13/04/2005 16:22:22
Mensagens: 40
Localização: Salvador/BA
Offline
|
muito obrigado amigo!
vou fazer assim.
|
"Não se acostume com o que não o faz feliz,revolte-se quando julgar necessário.Alague seu coração de esperanças,mas não deixe que ele se afogue nelas."
Fernando Pessoa.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 28/09/2006 20:24:43
|
F3RP4
HelloWorld
![[Avatar]](/images/avatar/c5a73f074ec0f725cd2d51335da5ec77.jpg)
Membro desde: 17/07/2006 15:30:17
Mensagens: 14
Offline
|
Olá, posso dar uma sujestão...
Migra sua aplicação para JAX-WS, ele suporta Collections e tambem Generics, e a curva de aprendizado é bem baixa. Lá vai um exemplinho:
package org.me;
import java.util.List;
import java.util.ArrayList;
import javax.jws.WebMethod;
import javax.jws.WebService;
@WebService
public class ExemploWS {
@WebMethod
public List<String> minhaLista() {
List<String> lista = new ArrayList<String>();
lista.add("Olá");
lista.add("GUJ");
return lista;
}
}
Depois disso é sow empacotar e deploy
Claro q o servidor deve dar suporte a JAX-WS (Glassfish, tomcat tbm da, mas tem q instalar...)
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 29/09/2006 13:11:50
|
obs
Thread.start()
![[Avatar]](/images/avatar/2d5951d1e3b31dfb7fd2dcc172df17fd.png)
Membro desde: 13/04/2005 16:22:22
Mensagens: 40
Localização: Salvador/BA
Offline
|
é muito bem vinda sua sugestão, pois eu estou ficando maluco com esse Axis. Trabalhar com array é loucura!
Tem como você me dizer do que eu preciso? Estou trabalhando com jboss 4.0.4 e jdk 1.5, hibernate 3.1 etc... o que mais eu preciso? Caso vc tenho algum tutorial tb agradeço.
valeu
Osmar
|
"Não se acostume com o que não o faz feliz,revolte-se quando julgar necessário.Alague seu coração de esperanças,mas não deixe que ele se afogue nelas."
Fernando Pessoa.
|
|
|
 |
|
|