![](/img/trans.png)
[英]Call local EJB method failds with java.lang.ClassCastException
[英]EJB java.lang.ClassCastException
我将Eclipse和Glassfish一起用于Java EE的第一步。 我创建了三个Eclipse项目(JPA项目,EJB项目,Web项目)。 我用本地接口TestBeanLocal创建了本地EJB bean TestBean:
@Stateless
@LocalBean
class TestBean implements TestBeanLocal {
@Override
public void doSomething(List<JPAEntity> myEntities) {
for(JPAEntity a : myEntities) {
}
}
}
和使用EJB的ManagedBean:
@MangagedBean
public class MyBean {
@EJB
private TestBeanLocal testBean;
@PostConstruct
private void init() {
//load JPAEntity from Database
List<JPAEntity> myEntities = ....
testBean.doSomething(myEntities);
}
}
我的问题是我在TestBean的for循环上收到ClassCastException。
java.lang.ClassCastException: us.mypackage.jpa.JPAEntity cannot be cast to us.mypackage.jpa.JPAEntity
我发现了另一个stackoverflow问题,该问题是由于两个不同的类加载器引起的。 我怎样才能解决这个问题? 我可以告诉EJB使用与我的Web项目相同的类加载器吗?
似乎实体jar位于war和ear中尝试从war库中删除实体jar War应该看到ear库文件HTH
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.