WebService com EJB3

2 respostas
danielbchaves

Galera, alguém aí já fez algum webservice acessando EJB3? eu estou tentando e depois de muitos erros fiquei travado tomando esse erro…

- Unable to find config file. Creating new servlet engine config file: /WEB-INF/server-config.wsdd

  • Exception:
    AxisFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
    faultSubcode:
    faultString: java.io.IOException: No serializer found for class com.daniel.cliente.ejb.objeto.Cliente in registry org.apache.axis.encoding.
    TypeMappingDelegate@15c929a
    faultActor:
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:java.io.IOException: No serializer found for class com.daniel.cliente.ejb.objeto.Cliente in
    registry org.apache.axis.encoding.TypeMappingDelegate@15c929a
    at org.apache.axis.encoding.SerializationContext.serializeActual(SerializationContext.java:1507)

não entendi o erro acima, pois a classe Cliente é Serializable, a classe TypeMappingDelegate está em um jar que está no lib do axis, mas não sei o que é o arquivo server-config.wsdd…
eu fui tomando vários erros de falta de classes do EJB na aplicação do axis no tomcat e fui adicionando os jar à medida que dava erro, agora não sei mais o que fazer

já validei as duas aplicações separadas, o ejb acessado por um cliente local funciona e tenho um outro WS publicado de exemplo que funciona também

Se alguém tivesse um exemplo ou um tutorial do uso dos 2 ao mesmo tempo ajudaria muito, é que sempre achei tutoriais e exemplos ou de EJB ou de WS, nunca dos 2 juntos…

[]s

2 Respostas

danielbchaves

descobri uma coisa… esse erro não é por causa do EJB e sim da classe que o método deveria retornar, a classe Cliente

estou sem o código dela aqui no serviço, depois posto ele, mas é uma classe que tem alguns atributos String, int e boolean, com seus gets e sets, implementa Serializable e possui um construtor público, só isso

eu fiz um WS que apenas retorna um objeto desses preenchido e tive o mesmo erro, alguém sabe o que está errado? eu tinha feito um WS que realizava uma conta e retornava um valor int e funcionou, mas retornando essa classe dá esse erro…

danielbchaves
package teste;

import java.io.Serializable;

public class Cliente implements Serializable
{
	private int clienteId;
	private String nome;
	private String telefone;
	private String cpf;
	private String cnpj;
	private boolean ativo;
	
	public Cliente()
	{
		
	}
	
	public int getId() {
		return clienteId;
	}
	public void setId(int id) {
		this.clienteId = id;
	}
	public String getNome() {
		return nome;
	}
	public void setNome(String nome) {
		this.nome = nome;
	}
	public String getTelefone() {
		return telefone;
	}
	public void setTelefone(String telefone) {
		this.telefone = telefone;
	}
	public String getCpf() {
		return cpf;
	}
	public void setCpf(String cpf) {
		this.cpf = cpf;
	}
	public String getCnpj() {
		return cnpj;
	}
	public void setCnpj(String cnpj) {
		this.cnpj = cnpj;
	}
	public boolean isAtivo() {
		return ativo;
	}
	public void setAtivo(boolean ativo) {
		this.ativo = ativo;
	}
}

essa é a classe q o método retorna..... alguém sabe pq dá aquele erro?

Criado 16 de agosto de 2008
Ultima resposta 18 de ago. de 2008
Respostas 2
Participantes 1