Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Pedro Vieira

WebServices com Glassfish

Mensagens Recomendadas

Pedro Vieira

Boa noite,

Estou a tentar exportar por webservices informação que vem da base de dados a partir do glassfish, crio o webservice faço o deploy do Java Web Application no Glassfish e fica tudo porreiro.

Consigo exportar Strings e array de strings a partir dos WebServices , no entanto preciso de enviar um array de objetos por exemplo um array com todos os objetos Carro, é possivel enviar isso para fora? como output do webservice ? Para sair algo como :

<carros>
<carro1>
<marca>VW</marca>
<modelo>Golf</modelo>
</carro1>
<carro2>
<marca>Seat</marca>
<modelo>Toledo</modelo>
</carro2>
</carros>

?

Cumprimentos,

PV

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
baleado

Que tipo de web service estás a criar? SOAP ou REST?

Se estás a usar SOAP usando anotações JAX-WS podes anotar os teus objectos com as seguintes anotações:

@XmlRootElement

@XmlType

@XmlAccessorType

Segue um exemplo:

MyServiceResponse.java

import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
   "carros"   
})
@XmlRootElement(name = "MyServiceResponse")
public class MyServiceResponse {
private List<Carro> carros;
public List<Carro> getCarros() {
 if(carros == null){
  carros = new ArrayList<Carro>();
 }
 return carros;
}
public void setCarros(List<Carro> carros) {
 this.carros = carros;
}
}

Carro.java

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlType;
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "Carro", propOrder = {
   "marca",
   "modelo"
})
public class Carro {
private String marca;
private String modelo;

public String getMarca() {
 return marca;
}
public void setMarca(String marca) {
 this.marca = marca;
}
public String getModelo() {
 return modelo;
}
public void setModelo(String modelo) {
 this.modelo = modelo;
}
}

Espero ter ajudado.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.