几个EAR,JPA和接口

时间:2010-11-15 13:59:14

标签: jpa ejb marshalling corba ear

我有 app1.ear ,其中包含:

  • JPA实体, MyObjectImpl ,从 api.jar
  • 实现接口 MyObject 使用 MyObject 接口和EJB Remote接口
  • api.jar
  • ejb.jar ,EJB提供访问和修改JPA实体的方法

第二个 app2.ear 应该使用 api.jar 中的ONLY接口与 app1.ear 进行通信。在耳朵之间传递Java基本类型时,一切正常。 但是当 app2.ear 尝试从 MyObject app1.ear 实例中检索时,会引发CORBA MARSHAL异常,并说 MyObjectImpl <无法找到/ em>类:

"IOP00810257: (MARSHAL) Could not load class com.zzz.MyObjectImpl"

app2.ear 中放置 MyObjectImpl 解决了这个问题,但我不想将JPA实现暴露给其他耳朵应用程序。 我错过了什么或者我的做法是错的吗?请告知要做什么或在哪里挖。 非常感谢提前!

PS:服务器GF 3.0.1,没有特定于GF的部署描述符,双耳在同一个JVM上运行

1 个答案:

答案 0 :(得分:1)

反序列化期间需要impl类。如果您不想公开impl类,另一种方法是使用XML或JSON或protobuff。