我尝试将我的Department和Mandator类持久化到hsqhldb,但它给出了这个错误.
Exception Description: [class ch.printsoft.mailhouse.usermgr.entity.Mandator] uses a non-entity [class ch.printsoft.mailhouse.usermgr.entity.Department] as target entity in the relationship attribute [field departments].
at org.eclipse.persistence.exceptions.PersistenceUnitLoadingException.exceptionSearchingForPersistenceResources(PersistenceUnitLoadingException.java:126)
at org.eclipse.persistence.jpa.PersistenceProvider.createEntityManagerFactory(PersistenceProvider.java:115)
at javax.persistence.Persistence.createEntityManagerFactory(Unknown Source)
at javax.persistence.Persistence.createEntityManagerFactory(Unknown Source)
Run Code Online (Sandbox Code Playgroud)
这些是我尝试持久保存到我的数据库的类.我真的不知道问题是什么.
@Entity
public class Mandator {
@Id
@GeneratedValue
private Integer id;
private String mandatorId;
@OneToMany(mappedBy = "mandator")
private List<MandatorUser> mandatorUsers;
@OneToMany(mappedBy = "mandator")
private List<SLAFamilyGroup> slaFamilyGroups;
@OneToMany(mappedBy = "mandator")
private List<Group> groups;
@OneToMany(mappedBy = "mandator")
private List<Department> departments;
@OneToMany(mappedBy = "mandator")
private List<CostUnit> costUnits;
@Entity
public class …Run Code Online (Sandbox Code Playgroud) 我创建了自定义ISO日期时间Converter:
public class IsoDateTimeConverter implements Converter, StateHolder {
private Class type;
private String pattern;
private boolean transientValue = false;
public void setType(Class type) {
this.type = type;
}
public void setPattern(String pattern) {
this.pattern = pattern;
}
@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) throws ConverterException {
if (StringCheck.isNullOrEmpty(value)) {
throw new ConverterException("value not specified");
}
try {
if (IsoDate.class.equals(type)) {
if (WebConst.ISO_DATE_NONE.equals(value)) {
return IsoDate.DUMMY;
} else {
//TODO User spezifische TimeZone auslesen
return new …Run Code Online (Sandbox Code Playgroud)