Jesper Skov [https://community.jboss.org/people/jskovjyskebankdk] created the discussion
"JPA validation fails" To view the discussion, visit: https://community.jboss.org/message/720006#720006 -------------------------------------------------------------- Hi, I just closed an issue I created against Dali: https://bugs.eclipse.org/bugs/show_bug.cgi?id=372478 https://bugs.eclipse.org/bugs/show_bug.cgi?id=372478 (I included the text below) It appears that the JPA validation error (Column "attributes" cannot be found on table...) we get is due to a problem in JBoss Tools, Hibernate. I wonder if we need to "do something" to make the validation pass, or it is indeed a bug. We can disable the validation as a workaround, but would like it working, obviously. The reason I ask, is that it seems such an obvious problem, and I can't find anything currently open (or closed) in Jira to explain it. We see it in more than one class. Maybe it's just a problem with the coding style here :^0 On the other hand, switching the JPA platform to Generic fixes the problem, so maybe not. I just tried the JBoss Tools nightly build from yesterday (on 3.7sr2) and could still reproduce. Is it something I should file a Jira issue for? Thx, Jesper ------ from the closed Eclipse issue ------- Build Identifier: Build id: 20120216-1857 We see a false error from the validation rule: Database/Column/Column cannot be resolved. The class with the validation error is this: @Entity @Table(name = "PasswordResourceAuditLog", uniqueConstraints = @UniqueConstraint(columnNames = { "timestamp" })) public class PasswordResourceAuditLogEntry extends UUIDEntity implements LogEntry, Serializable { @Column(length = 50) private String username; private String dataSourceName; @Temporal(TemporalType.TIMESTAMP) private Date timestamp; @OneToOne(fetch=FetchType.EAGER) private PasswordAttributes attributes; ... The field attributes gets a validation error: Column "attributes" cannot be resolved on table "PASSWORDRESOURCEAUDITLOG" The class PasswordAttributes looks like this: @Inheritance(strategy = InheritanceType.TABLE_PER_CLASS) @Entity abstract public class PasswordAttributes extends UUIDEntity { public abstract PasswordAttributes copy(); public abstract PasswordType getType(); public void setType(PasswordType type){ //dummy method due to EL } } and in turn: @MappedSuperclass public class UUIDEntity implements Serializable { @Id @GeneratedValue(generator="system-uuid") @GenericGenerator(name="system-uuid",strategy = "uuid") @Column(length=32) @Size(max=32, min=32) protected String id; @SuppressWarnings("unused") @Version private Long version; public String getId() { return id; } } Looking in the database (tables created by Hibernate, no custom configuration as far as I know), the column is actually called ATTRIBUTES_ID. We would expect the validator to look for this, not a column named ATTRIBUTES. -------------------------------------------------------------- Reply to this message by going to Community [https://community.jboss.org/message/720006#720006] Start a new discussion in JBoss Tools at Community [https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2128]
_______________________________________________ jboss-user mailing list jboss-user@lists.jboss.org https://lists.jboss.org/mailman/listinfo/jboss-user