Web service

4 respostas
Jefries

Pessoal,será que alguem pode me ajudar co esses probleams que esrtou tendo???

nao consigo executar meu web service,
o erro reportado é este:

java.lang.ClassCastException: webserviceclient.CtDiopsFinanc cannot be cast to webserviceclient.CtDiopsCadastral

O que isto qyer dizer???
Como corrigi-lo???

4 Respostas

O

Olá Jefries,
o que realmente seria CtDiopsFinanc e CtDiopsCadastral?
Sou novo em Java mas esse erro é de converão.
Pelo o que eu entendi seria dois objetos
um tratando de Financimento e o outro de Cadastro.
Possívelmente pode haver algum dado que tenha em
um formulário e não contenha em outro ou tipos de dados diferentes na tabela,
alguma coisa desse tipo.
Gostaria que me informa-se quando encontrar a solução. OK.

Espero que tenha ajudado.
Osvaldo Junior.

nel

Jefries:
Pessoal,será que alguem pode me ajudar co esses probleams que esrtou tendo???

nao consigo executar meu web service,
o erro reportado é este:

java.lang.ClassCastException: webserviceclient.CtDiopsFinanc cannot be cast to webserviceclient.CtDiopsCadastral

O que isto qyer dizer???
Como corrigi-lo???

Boa tarde.

Simplesmente este Objeto webserviceclient.CtDiopsCadastral não pode ser convertido para este Objeto webserviceclient.CtDiopsFinanc.
Você está enviando o objeto webserviceclient.CtDiopsCadastral para uma operação do WS que espera o objeto webserviceclient.CtDiopsFinanc, causando este erro de Cast.

Abraços.

Jefries

Nel ainda nao entendi muito bem, quer dizer queu eu estou enviand um arquivo xml errado,
me sugira uma correcao, por favor.
Muito obrigado!
Ou seja queria uma explicação um pouc mais detalhada.

nel

Bom dia Jefries.

A explicação para isto é bem simples. Vamos supor que você tenha duas classes, Produto e Pessoa. Esqueça qualquer tipo de relacionamento que possa existir entre as duas classes.
Como pode ver, temos classes distintas, mesmo que tenham os mesmos atributos e métodos, ainda sim são classes distintas.

Em outra classe, você tem o seguinte método:

public void setProduto(Produto produto) {
    //implementação
}

Agora, na chamada para este método, você faz o seguinte:

//Objeto Pessoa
Pessoa pessoa;

//Este método, recebe exclusivamente um objeto do tipo [u]Produto[/u].
public void setProduto(pessoa);

Isso vai acarretar em um ClassCastException (ignore qualque outro erro possível). Porque? Simplesmente porque não existe um possível para este caso, não implicitamente. Exemplo, se fosse assim:

public void setProduto(Object produto) {
//implementação
}

Ele aceitaria, mas dependendo de como você implementar este método, ele também vai acarretar em um ClassCastException.
Resumidamente, a passagem de parametros devem ser compatíveis, no seu caso, você passou um Objeto diferente do que a operação do seu Web Service esperava.

Certo? :slight_smile:

Abraços!

Criado 17 de maio de 2010
Ultima resposta 18 de mai. de 2010
Respostas 4
Participantes 3