- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
最近,我将项目从 Hibernate 版本 3.1 迁移到 4.3,为了获得更好的性能,我尝试使用注释而不是 xml 映射。在继承类的所有实体类中,出现以下异常。错误是“org.hibernate.MappingException”
我尝试将 targetEntity 添加到 ManytoOne 类并添加 @Access(AccessType.PROPERTY) ,但没有任何效果。更改为字段注释是不可能的,因为我有 150 多个实体类。我尝试删除扩展类及其 @override 方法,但异常不存在,但是,我需要添加使用它。
这是我的实体类
@Entity
@Table(name = "mapusergroups", catalog = "designdb")
public class Mapusergroups extends PlanroomMigrationEntity implements
java.io.Serializable {
private int idMapUserGroups;
private Groups groups;
private Users users;
public Mapusergroups() {
}
public Mapusergroups(Groups groups, Users users) {
this.groups = groups;
this.users = users;
}
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "idMapUserGroups", unique = true, nullable = false)
public int getIdMapUserGroups() {
return this.idMapUserGroups;
}
public String getIdMapUserGroupsString() {
return "" + this.idMapUserGroups;
}
public void setIdMapUserGroups(int idMapUserGroups) {
this.idMapUserGroups = idMapUserGroups;
}
@ManyToOne(fetch = FetchType.LAZY, targetEntity = Groups.class)
@JoinColumn(name = "FK_idGroups", nullable = false)
@PlanroomMigrationEntity.PathUpToCompany
public Groups getGroups() {
return this.groups;
}
public void setGroups(Groups groups) {
this.groups = groups;
}
@ManyToOne(fetch = FetchType.LAZY, targetEntity = Users.class)
@JoinColumn(name = "FK_idUsers", nullable = false)
@PlanroomMigrationEntity.ReferenceToUser
public Users getUsers() {
return this.users;
}
public void setUsers(Users users) {
this.users = users;
}
@Override
public BaseWrapper<?> getWrapper() {
return new WMapUserGroups(this);
}
@Override
public PlanroomMigrationDAO getDao() {
return new MapUserGroupsDAO();
}
@Override
public void attachReferences(JSONObject json, ObjectFinder finder)
throws JSONException { this.users = json.has("userId") ? (Users) finder.lookup(Users.class,
json.get("userId").toString()) : null;
this.groups = json.has("groupId") ? (Groups) finder.lookup(
Groups.class, json.get("groupId").toString()) : null;
}
这是我的 xml,用于转换为注释
@XmlType
public class Mapusergroups extends PlanroomMigrationEntity implements
java.io.Serializable {
private int idMapUserGroups;
private Users users;
private Groups groups;
public Mapusergroups() {
}
@Deprecated
public Mapusergroups(Users users, Groups groups) {
this.users = users;
this.groups = groups;
}
@XmlAttribute
public int getIdMapUserGroups() {
return this.idMapUserGroups;
}
@XmlAttribute
@XmlID
public String getIdMapUserGroupsString() {
return "" + this.idMapUserGroups;
}
public void setIdMapUserGroups(int idMapUserGroups) {
this.idMapUserGroups = idMapUserGroups;
}
@XmlAttribute
@XmlIDREF
@PlanroomMigrationEntity.ReferenceToUser
public Users getUsers() {
return this.users;
}
public void setUsers(Users users) {
this.users = users;
}
@XmlAttribute
@XmlIDREF
@PlanroomMigrationEntity.PathUpToCompany
public Groups getGroups() {
return this.groups;
}
public void setGroups(Groups groups) {
this.groups = groups;
}
@Override
public BaseWrapper<?> getWrapper() {
return new WMapUserGroups(this);
}
@Override
public PlanroomMigrationDAO getDao() {
return new MapUserGroupsDAO();
}
@Override
public void attachReferences(JSONObject json, ObjectFinder finder)
throws JSONException {
this.users = json.has("userId") ? (Users) finder.lookup(Users.class,
json.get("userId").toString()) : null;
this.groups = json.has("groupId") ? (Groups) finder.lookup(
Groups.class, json.get("groupId").toString()) : null;
}
我需要将 PlanroomMigrationEntity 与属性注释一起使用。请帮忙。
这是我的堆栈跟踪
org.hibernate.MappingException: Could not determine type for: com.at.project.service.planroom_migration.PlanroomMigrationDAO, at table: mapusergroups, for columns: [org.hibernate.mapping.Column(dao)] at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:349) at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:322) at org.hibernate.mapping.Property.isValid(Property.java:241) at org.hibernate.mapping.PersistentClass.validate(PersistentClass.java:496) at org.hibernate.mapping.RootClass.validate(RootClass.java:270) at org.hibernate.cfg.Configuration.validate(Configuration.java:1360) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1851) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1930) at wadetech.DB.base.HibernateUtils.(HibernateUtils.java:111) at wadetech.DB.base.BaseDAO.(BaseDAO.java:43) at wadetech.DB.DAOS.__MaintenanceDAO.(__MaintenanceDAO.java:10) at com.at.project.utils.runtime.RuntimeModifier.HasExecuted(RuntimeModifier.java:127) at wadetech.listeners.ModificationScriptStartupListener.contextInitialized(ModificationScriptStartupListener.java:47) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5016) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5528) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1575) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1565) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)
最佳答案
与继承关系不大。阅读错误消息。它表示 Hibernate 不知道如何映射实体的 PlanroomMigrationDAO
类型的属性 dao
。
这个属性一开始就不应该存在:实体不应该负责创建 DAO。
但是如果你真的想坚持这个设计,你需要告诉 JPA dao 不是一个持久属性。这就是 @Transient 注释的作用。
关于java - 如何解决由于继承类而导致的org.hibernate.MappingException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57527431/
我有 Symfony 项目,其中有 2 个实体 - Building 和 Building_type。它们与 ManyToMany 单向关联相连。因此,当我尝试访问我的 Controller 时,我遇
在 couchBase 中保存 Map 类型数据时出现异常 Caused by: org.springframework.data.mapping.MappingException: Couldn't
我在使用无状态 session 进行更新时遇到问题,我 想知道是否有人见过这样的东西。 (NHibernate 3.1)。 我基本上是在做以下事情: SomeEntity e = statelessS
在使用hibernate时,我遇到了在两个不同的包中映射类的问题。 我有一个 myapp.domain.ItemforSale 类,它将映射到 myapp.cart.CartItem 我创建了 Car
最近,我将项目从 Hibernate 版本 3.1 迁移到 4.3,为了获得更好的性能,我尝试使用注释而不是 xml 映射。在继承类的所有实体类中,出现以下异常。错误是“org.hibernate.M
我正在努力解决以下问题: Caused by: org.hibernate.MappingException: Foreign key (FKj4uw5b6ekvxc2djohvon7lk7:bi_p
我尝试让 hibernate 4 运行(JBoss AS 7 附带)并将我的应用程序部署为 EAR(persistence.xml iis 在 EAR 的 META-INF 中)。 hibernate
我正在使用 JBoss AS 7 和 IDEA 11。当我尝试部署我的应用程序时遇到了这个问题: 我的应用中有两个实体: 首先: @Entity @Table(name="users") public
我在尝试使用 Hibernate 时遇到映射异常 - 在独立的 java 应用程序中(使用 netbeans 8)。我已经配置了 hibernate.cfg.xml 并设置了 hbm.xml 文件并映
我有一个数据库、hbm 映射文件和位于类库 中的 App.config。现在从一个测试项目中我引用该库并尝试调用我创建的 HibernateHelper 类,在运行时抛出以下错误: NHibernat
我有这个异常(exception): org.hibernate.MappingException: persistent class not known: java.lang.Long 我正在使用
情景 我需要在两个不同的上下文中表示一个对象。一个上下文不应该持续存在,另一个应该。持久对象是从另一个系统中提取的实际数据。非持久对象代表产品定义的一部分。两者将进行比较,我对存储定义数据不感兴趣。持
我有一个带有复合 ID 的表,其中一个字段是另一个表的外键。 我尝试使用以下类来实现这一点 - Tracking.java: public class Tracking { @Id @
我正在使用 Hibernate 注释并且有一个非常基本的数据对象: import java.io.Serializable; import javax.persistence.Entity; impo
我很好奇这个错误 org.hibernate.MappingException:未知实体:xyz 我是 hibernate 新手。欢迎提出任何建议。提前致谢。 最佳答案 Hibernate 将您的数据
我做错了什么? Exceprion 说我需要使“id”字段不可插入且不可更新。但我已经有了这些注释。我什至删除了“id”的setter方法,但它没有任何效果。是不是少了什么? weblogic.app
我正在为这两个类使用 JPA 注释: @Entity @RooJavaBean @RooToString @RooEntity @MappedSuperclass public abstract cl
使用 Castor 1.3,在测试时收到以下异常: org.exolab.castor.mapping.MappingException: The Java class com.company.sal
我收到以下错误: Could not determine type for: java.util.Set, at table: Ruleset, for columns: [org.hibernate
我在一个项目的代码中。当我尝试将对象 RRREC 类型转换为 RR_REC 类型时出现错误。 RRREC 类: public class RRREC{ protected String ow
我是一名优秀的程序员,十分优秀!