小编use*_*217的帖子

奇怪的classCastException hibernate 3.5 glassfish

嗨,我有一个问题,我无法自己解决.我有一个war文件打包在耳中并运行在glassfish 3.0.1上,hibernate 3.5作为JPA提供程序.我用maven编译它并用想法或手动部署它.每隔一次我在我的DAO中得到一个强制转换异常:

java.lang.ClassCastException: com.myproject.domain.entity.User cannot be cast to 
com.myproject.domain.entity.User
Run Code Online (Sandbox Code Playgroud)

其他时候它完美无缺.这种行为没有模式.有人可以对这里发生的事情有所了解吗?

在com.myproject.domain.dao.UserDAOImpl.checkUserSessionValid(UserDAOImpl.java:195)中抛出异常的示例方法

public User checkUserSessionValid(String sessionId) {
        User user = null;
        EntityManager em = provider.entityManager();

        try {
            em.getTransaction().begin();
           //Query q = em.createQuery("SELECT u FROM User u WHERE u.session.sessionId = :sessionId"); makes no difference :/
            Query q = em.createQuery("SELECT u FROM User u WHERE u.session.sessionId = :sessionId",User.class);
            q.setParameter("sessionId", sessionId);
            user = (User) q.getSingleResult();

            em.getTransaction().commit();
        } catch (NoResultException ignored) {

        } finally {
            em.close();
        }

        return user;
 }

My libraries
[INFO] +- …
Run Code Online (Sandbox Code Playgroud)

java hibernate jpa glassfish classcastexception

6
推荐指数
1
解决办法
3443
查看次数

标签 统计

classcastexception ×1

glassfish ×1

hibernate ×1

java ×1

jpa ×1