Pessoal, estou iniciando em Web Services e me deparei com o seguinte problema:
Quanto tento requisitar uma lista de objetos ele me da um erro de Serialização do meu modelo …
No meu modelo tenho ( EJB3 / Hibernate ):
package meupacote.projeto.modelo;
import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import meupacote.projeto.annotation.Label;
@Entity
@Table(name=“gtransp”)
public class Transportadora implements Serializable {
private static final long serialVersionUID = 5847973676816114612L;
@Id
@Label("Codigo da Transportadora")
@Column(name="cd_tr")
private Integer iTransportadora;
@Label("CNPJ da Transportadora")
@Column(name="cgc_tr")
private String cnpj;
@Label("Inscricao Estadual")
@Column(name="insc_tr")
private String ie;
@Label("Nome da Transportadora")
@Column(name="NOM_TR")
private String nome;
@Label("Endereco da Transportadora")
@Column(name="END_TR")
private String endereco;
@Label("Cidade da Transportadora")
@Column(name="MUN_TR")
private String cidade;
@Label("CEP da Transportadora")
@Column(name="CEP_TR")
private String cep;
@Label("Estado da Transportadora")
@Column(name="uf_tr")
private String estado;
public Transportadora() {
}
public Transportadora(Integer iTransportadora, String cnpj, String ie,
String nome, String endereco, String cidade, String cep,
String estado) {
this.iTransportadora = iTransportadora;
this.cnpj = cnpj;
this.ie = ie;
this.nome = nome;
this.endereco = endereco;
this.cidade = cidade;
this.cep = cep;
this.estado = estado;
}
public Integer getiTransportadora() {
return iTransportadora;
}
public void setiTransportadora(Integer iTransportadora) {
this.iTransportadora = iTransportadora;
}
public String getCnpj() {
return cnpj;
}
public void setCnpj(String cnpj) {
this.cnpj = cnpj;
}
public String getIe() {
return ie;
}
public void setIe(String ie) {
this.ie = ie;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEndereco() {
return endereco;
}
public void setEndereco(String endereco) {
this.endereco = endereco;
}
public String getCidade() {
return cidade;
}
public void setCidade(String cidade) {
this.cidade = cidade;
}
public String getCep() {
return cep;
}
public void setCep(String cep) {
this.cep = cep;
}
public String getEstado() {
return estado;
}
public void setEstado(String estado) {
this.estado = estado;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result
+ ((iTransportadora == null) ? 0 : iTransportadora.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (!(obj instanceof Transportadora))
return false;
Transportadora other = (Transportadora) obj;
if (iTransportadora == null) {
if (other.iTransportadora != null)
return false;
} else if (!iTransportadora.equals(other.iTransportadora))
return false;
return true;
}
}
No meu DAO tenho o seguinte Método ( Interface + Implementação ):
package meupacote.projeto.dao.hbm;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import meupacote.projeto.dao.DaoException;
import meupacote.projeto.dao.InterfaceTransportadoraDAO;
import meupacote.projeto.hbm.HibernateUtil;
import meupacote.projeto.modelo.Transportadora;
public class TransportadoraDAO implements InterfaceTransportadoraDAO {
@SuppressWarnings("unchecked")
public List<Transportadora> todas() throws DaoException {
Session session = HibernateUtil.getInstance();
try {
return session.createCriteria(Transportadora.class).list();
} catch (HibernateException e) {
throw new DaoException(e);
} finally {
session.close();
}
}
}
Ao fazer a solicitação via URL como teste me retorna o seguinte erro: - ( http://servidorremoto/axis/TransportadoraWs.jws?method=todas )
Fault - ; nested exception is:
java.io.IOException: No serializer found for class meupacote.projeto.modelo.Transportadora in registry org.apache.axis.encoding.TypeMappingDelegate@17d7b31d
AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.io.IOException: No serializer found for class meupacote.projeto.modelo.Transportadora in registry org.apache.axis.encoding.TypeMappingDelegate@17d7b31d
faultActor:
faultNode:
faultDetail:
Se alguém puder me ajudar, agradeço. Pois não encontrei em nenhum lugar essa resposta que preciso.