Eu tenho uma classe de nome Dados que recebe um array de String… um metodo de um defaultTableDataProvider me retorna um array do tipo Object… eu gostaria de pegar esse array object e transformalo em um array do tipo Dados( que é a minha classe )… sendo que o array de object tem exatamente o mesmo “layout” que o array de Dados… alguem pode me ajudar… estou fazendo da seguinte forma
Object[] dt = defaultTableDataProvider.getArray()
Dados[] value = new Dados[5];
value = (Dados)dt;
porem isso gera a seguinte Exception
Description: An unhandled exception occurred during the execution of the web application. Please review the following stack trace for more information regarding the error.
Eu acho que vc tem que por entre parentes o Object e o que vc declarou nao vale! Explicação:
A exception java.lang.classCastException ocorre quando voce tenta com cast explicito converter um objeto, ou valor, em outro que não é possivel
Espero tedo ajudado…
Senão posta de novo…
S
SchuenemannPJ
É que o tipo é Dados[], não Dados.
value=(Dados[])dt;
S
sergiotabordaPJ
“marcioalvesr”:
ola pessoal tudo bem,
Eu tenho uma classe de nome Dados que recebe um array de String… um metodo de um defaultTableDataProvider me retorna um array do tipo Object… eu gostaria de pegar esse array object e transformalo em um array do tipo Dados( que é a minha classe )… sendo que o array de object tem exatamente o mesmo “layout” que o array de Dados… alguem pode me ajudar… estou fazendo da seguinte forma
Object[] dt = defaultTableDataProvider.getArray()
Dados[] value = new Dados[5];
value = (Dados)dt;
Dois problemas:
O cast de um array é tb um array
value=(Dados[])dt;
Mas os arrays têm que ter o mesmo tamanho.
O seu codigo não garante isso. Deveria ser:
Dados[]value=newDados[dt.length];
Mas isto está errado, pq não se deve iniciar um array que irá receber imediatamente outro.
defaultTableDataProvider.getArray() deve retorna um array de Dados para isto funcionar. E nesse caso o codigo correto seria
Fiz o que o nosso amigo sugeriu … coloquei o cast da forma que ela falow porem o erro ainda continua.
Description: An unhandled exception occurred during the execution of the web application. Please review the following stack trace for more information regarding the error.
Fiz o que o nosso amigo sugeriu … coloquei o cast da forma que ela falow porem o erro ainda continua.
Description: An unhandled exception occurred during the execution of the web application. Please review the following stack trace for more information regarding the error.
Isto é um problema dentro da classe Data dentro de DefatulTableDataProvider e não tem nada a ver com o codigo acima. Coloca ai o codigo dessa classe para a gente ver