java中的两个项目和两个pojos以及相同的数据库

时间:2014-05-24 11:55:11

标签: java hibernate

我有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方法并开始执行它就会出现问题,这会产生类强制转换异常

1 个答案:

答案 0 :(得分:0)

我认为设计有一个根本的缺陷。如果我理解正确,您将p2.jar打包在p1中。这意味着所有类都可以在p1战争中随时可用。我不确定你是否在运行时在p1的部署程序集中添加了p2.jar。

我有类似的设置如下:

common.jar,其中包含所有Hibernate modelsSessionFactory配置。它是MVC应用程序,所以我在DAO中也有common.jar层。

我在战争中ServiceImpl,我调用操纵该实体的DAO.method(),它运行正常。

您可以检查部署程序集吗?