我有2个项目1是webapplication,另一个是独立应用程序。 两者都在同一个数据库上使用hibernate。 我的问题是
我尝试时仍无法保持正常状态。 我只是想从project1访问project2中的方法。所以我在project1中使用p2.jar制作jar和iam,在p1中创建会话并调用p2但是可用的pojos是相同的,但我仍然得到了在java中强制转换异常。
Ex:在P1 iam中调用P2的m1()。
在P1方法中逻辑就像这样
创建会话;
session.beginTransaction();
Query preChkQuery=session.createQuery("from X x ");
orcId=((X)orList.get(0)).getId();
//invoking p2 method
P2class p2class = new P2class ();
p2class.execute(orcId)
And in method execute
session.beginTransaction();
Query preChkQuery=session.createQuery("from X x ");
we=((X)orList.get(0)).getId();
return we;
一旦调用进入p2方法并开始执行它就会出现问题,这会产生类强制转换异常
答案 0 :(得分:0)
我认为设计有一个根本的缺陷。如果我理解正确,您将p2.jar
打包在p1
中。这意味着所有类都可以在p1战争中随时可用。我不确定你是否在运行时在p1的部署程序集中添加了p2.jar。
我有类似的设置如下:
common.jar
,其中包含所有Hibernate models
和SessionFactory
配置。它是MVC应用程序,所以我在DAO
中也有common.jar
层。
我在战争中ServiceImpl
,我调用操纵该实体的DAO.method()
,它运行正常。
您可以检查部署程序集吗?