Migrando hibernate 3 para 4

Boa tarde,

Estou migrando do hibernate 3 para a versão 4, e algumas instruções SQL estão reclamando:

        try {
            // USING HIBER
            Query query = hiberSession.createQuery(HQL);

            // Lock de Imagem
            if (poDataHoraLock != null)
                query.setParameter("dataHora", poDataHoraLock.toTimestamp(), Hibernate.TIMESTAMP);
            else
                query.setParameter("dataHora", null, Hibernate.TIMESTAMP);

            query.setParameter("keyLock", pStKeyLock, Hibernate.STRING);
            query.setParameter("id", (Long) poIdSolicitacao.getValue());

            query.executeUpdate();
            hiberSession.flush();

        }
        catch (HibernateException e) {
            throw new DAOException(e);
        }

Neste caso, o erro a seguir é apresentado:

STRING/TIMESTAMP cannot be resolved or is not a field

Aparentemente essas constantes não existem mais na nova versão, alguém poderia me dizer como solucionar?

Desde já agradeço.

Eu já tive problemas tentando mudar para o Hibernate 4.

E os problemas eram desnecessários, iria migrar só porque o AS tinha como default o Hibernate 4.

No final foi mais fácil configurar o AS para usar o hibernate antigo do que deixar com a nova versão do hibernate.

Você realmente precisa migrar ?

Sim, a aplicação parou na versão 3.0

na versão antiga do hibernate você está usando ehcache?

Sim

[quote=robinsonbsilva]Sim
[/quote]

falo isso pq eu nao consegui implementar ehcache no hibernate 4
e algumas coisas foram mudadas para poder implementa
nada de demais…mas msm assim não funfo

de uma olhada nisso antes de mudar.

Acho legal atualizar versões mas as vezes precisa ver se compensa o retrabalho que vc vai ter

Senhores, de acordo com o docs

http://docs.jboss.org/hibernate/core/4.1/javadocs/

setParameter(int position, Object val, Type type)
          Bind a value to a JDBC-style query parameter.

o parametro type agora está em org.hiberntate.type.EXEMPLO.instance