Psy*_*syx 1 java jpa cdi java-ee-7
IE:com.adms.fcl3.entity.User无法强制转换为com.adms.fcl3.entity.User
自从将项目从EJB/ManagedBeans迁移到CDI以来,我开始遇到这种错误,所以我的猜测是AoP/Injection混乱了类.
但我没有证据证明这一点.也没有解决方案.
负责的代码:
public User getByLoginPasswdValid(String login, String passwd) {
TypedQuery<User> q = em.createNamedQuery("User.findByLoginPasswdValid", User.class);
q.setParameter("login", login);
q.setParameter("passwd", passwd);
List<User> results = q.getResultList();
if (results.isEmpty()) {
return null;
}
return results.get(0);
}
Run Code Online (Sandbox Code Playgroud)
失败了return results.get(0);.Debuger向我确认该列表有效,具有User对象,具有适当的值等...
如果有多个类加载器,则可以同时加载具有相同名称的两个类.这两类不可互换.不幸的是,ClassCastException没有给出任何迹象表明虽然类具有相同的名称,但它们不是同一个类,并且具有不同的类加载器.
| 归档时间: |
|
| 查看次数: |
71 次 |
| 最近记录: |