【发布时间】:2014-10-04 00:19:01
【问题描述】:
目前我们正在为不同的模块开发 EJB 模块。这意味着:用户、菜单等...但是 JPA 实体是否有可能使用不同的 EJB 模块实体。
例如:
这是我在 Menu EJB 模块中的 Menu JPA 实体。
@Entity
@Table(name = "MENU")
public class Menu implements Serializable {
@Id
@Column(name = "MENU_ID", nullable = false, precision = 38, scale = 0)
private Long menuId;
//getter setter
}
但是我的 User JPA 实体需要在 USER EJB 模块中使用 Menu 实体。
@Entity
@Table(name = "USER")
public class User implements Serializable {
@Id
@Column(name = "USER_ID", nullable = false, precision = 38, scale = 0)
private Long userId;
@JoinColumn(name = "MENU_ID", nullable = false)
@ManyToOne(optional = false)
private Menu menuId;
//getter setter
}
当我从用户 EJB 模块运行单元测试时,出现以下错误:
[class com.user.User] uses a non-entity [class com.menu.Menu] as target entity in the relationship attribute [field menuId]
我该如何解决这个问题?或者可以使用吗?
同时部署这些 ejb 模块的最佳方法是什么?
谢谢, 埃巴
【问题讨论】:
标签: jakarta-ee jpa netbeans ejb