Erro muito estranho: java.lang.ClassCastException

0 respostas
brevleq

Pessoal to com um problema muito doido aqui!

Quando tento acessar uma entidade do banco de dados estou me deparando com o seguinte erro:
java.lang.ClassCastException: com.geotech.diengine.entities.IndicatorEntity cannot be cast to com.geotech.diengine.entities.IndicatorEntity
Esse erro só começa a acontecer quando eu escrevo algo novo no banco, antes disso funciona normalmente. Coloquei inclusive um if para testar se o objeto realmente não pertence à classe indicada, e pelo debugador do netbeans eu vi que a classe é a classe correta mas mesmo assim não passa pelo if!
@WebMethod(operationName = "getDrillDimensions")
    public ArrayList<String> getDrillDimensions(@WebParam(name = "indicatorName") String indicatorName) {
        ArrayList<String> drillDimensions = new ArrayList<String>();
        try {
            Object object = manager.createNamedQuery("IndicatorEntity.findByNome").setParameter("nome", indicatorName).getSingleResult();
            IndicatorEntity indicator=null;
            if(object instanceof IndicatorEntity)
                indicator=(IndicatorEntity) object;

            Vector<DimensionAxisEntity> dimensionAxisList = (Vector<DimensionAxisEntity>) indicator.getDimensionAxisEntityCollection();
            for (DimensionAxisEntity dimensionAxis : dimensionAxisList) {
                if (dimensionAxis.getEixo() == indicator.getEixoDrill()) {
                    drillDimensions.add(dimensionAxis.getDimensionEntity().getNome());
                }
            }
        } catch (Exception ex) {
            Logger.getLogger(IndicatorProperties.class.getName()).log(Level.SEVERE, null, ex);
        }
        return drillDimensions;
    }

Alguém pelo amor de Deus sabe pq isto está acontecendo??

Obs: estou usando o Toplink junto com o glassfish v2

Criado 6 de agosto de 2010
Respostas 0
Participantes 1