Hi
I have the following entity:
@Entity
@Table(name = "accounts_userfavorites")
public class UserFavorite implements Serializable{
private static final long serialVersionUID = 7233246222509313691L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private long id;
@Column(nullable = false)
private String channelName;
@Column(nullable = true)
private String name;
@Column(nullable = true)
private Date startTime;
@Column(nullable = false)
private Date timeAdded = new Date();
public enum Type {
CHANNEL,
PROGRAMME,
SERIES;
}
@Enumerated(EnumType.ORDINAL)
@Column(nullable = false)
private Type type;
@ManyToOne(optional=false)
@JoinColumn(name="user_account_id",referencedColumnName="id", nullable =
false)
private UserAccount userAccount;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getChannelName() {
return channelName;
}
public void setChannelName(String channelName) {
this.channelName = channelName;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getStartTime() {
return startTime;
}
public void setStartTime(Date startTime) {
this.startTime = startTime;
}
public Date getTimeAdded() {
return timeAdded;
}
public void setTimeAdded(Date timeAdded) {
this.timeAdded = timeAdded;
}
public Type getType() {
return type;
}
public void setType(Type type) {
this.type = type;
}
public UserAccount getUserAccount() {
return userAccount;
}
public void setUserAccount(UserAccount userAccount) {
this.userAccount = userAccount;
}
}
however when I try to enhance it I get the following error:
java.lang.NoClassDefFoundError: Lmk/zulu/entities/UserFavorite$Type;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:2259)
at java.lang.Class.getDeclaredFields(Class.java:1715)
at
org.apache.openjpa.lib.util.J2DoPrivHelper$7.run(J2DoPrivHelper.java:270)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.openjpa.persistence.PersistenceMetaDataDefaults.getAccessType(PersistenceMetaDataDefaults.java:262)
at
org.apache.openjpa.persistence.PersistenceMetaDataDefaults.getAccessType(PersistenceMetaDataDefaults.java:250)
at
org.apache.openjpa.meta.AbstractMetaDataDefaults.populate(AbstractMetaDataDefaults.java:155)
at
org.apache.openjpa.persistence.PersistenceMetaDataDefaults.populate(PersistenceMetaDataDefaults.java:227)
at
org.apache.openjpa.meta.MetaDataRepository.addMetaData(MetaDataRepository.java:794)
at
org.apache.openjpa.meta.MetaDataRepository.addMetaData(MetaDataRepository.java:780)
at
org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.getMetaData(AnnotationPersistenceMetaDataParser.java:657)
at
org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parseClassAnnotations(AnnotationPersistenceMetaDataParser.java:480)
at
org.apache.openjpa.persistence.AnnotationPersistenceMetaDataParser.parse(AnnotationPersistenceMetaDataParser.java:352)
at
org.apache.openjpa.persistence.PersistenceMetaDataFactory.load(PersistenceMetaDataFactory.java:229)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaDataInternal(MetaDataRepository.java:474)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:294)
at
org.apache.openjpa.meta.ValueMetaDataImpl.resolveDeclaredType(ValueMetaDataImpl.java:431)
at
org.apache.openjpa.meta.ValueMetaDataImpl.resolve(ValueMetaDataImpl.java:410)
at
org.apache.openjpa.meta.FieldMetaData.resolve(FieldMetaData.java:1676)
at
org.apache.openjpa.meta.ClassMetaData.resolveMeta(ClassMetaData.java:1691)
at
org.apache.openjpa.meta.ClassMetaData.resolve(ClassMetaData.java:1626)
at
org.apache.openjpa.meta.MetaDataRepository.processBuffer(MetaDataRepository.java:717)
at
org.apache.openjpa.meta.MetaDataRepository.resolveMeta(MetaDataRepository.java:616)
at
org.apache.openjpa.meta.MetaDataRepository.resolve(MetaDataRepository.java:541)
at
org.apache.openjpa.meta.MetaDataRepository.getMetaData(MetaDataRepository.java:308)
at org.apache.openjpa.enhance.PCEnhancer.<init>(PCEnhancer.java:249)
at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4493)
at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4440)
at org.apache.openjpa.enhance.PCEnhancer$1.run(PCEnhancer.java:4410)
at
org.apache.openjpa.lib.conf.Configurations.launchRunnable(Configurations.java:708)
at
org.apache.openjpa.lib.conf.Configurations.runAgainstAllAnchors(Configurations.java:698)
at org.apache.openjpa.enhance.PCEnhancer.run(PCEnhancer.java:4405)
at
org.codehaus.mojo.openjpa.OpenJpaEnhancerMojo.enhance(OpenJpaEnhancerMojo.java:121)
at
org.codehaus.mojo.openjpa.OpenJpaEnhancerMojo.execute(OpenJpaEnhancerMojo.java:86)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:553)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:523)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Clearly the type field causes the problem here. Anyone have an idea why this
happens and how to fix it?
I'm using openjpa 1.2.1
--
View this message in context:
http://n2.nabble.com/Enhancing-entities-fails-when-there-is-an-enum-field-in-the-entity-tp3077176p3077176.html
Sent from the OpenJPA Users mailing list archive at Nabble.com.