Good Morning, I wont spam the list with this, but I am reposting once in hopes of getting an answer ....
So, last time asking, please forgive the shameless repost! -----Ursprüngliche Nachricht----- Von: Boblitz John [mailto:[email protected]] Gesendet: Freitag, 20. Mai 2011 08:26 An: [email protected] Betreff: Reverse Mapping PostgresDB - unique constraints not generated. Hello, I am attempted to reverse map a PostgresDB, and, after some initial problems I suceeded in generating a schema with the SchemaTool and then the annotated classes via the ReverseMappingTool. I am generally very happy with the results. However, none of my unique constraints are annotated in the classes! The data regarding the constrainst is in the schema.xml - but does not get used. I searched the list and extensively on the net, but most of what I find has nothing to do with the problem ... Here an example from the schema.xml: <table name="exchangerate"> <pk name="pk_exchangerate" column="uniqueid"/> <column name="uniqueid" type="bigint" type-name="int8" not-null="true" size="19"/> <column name="type" type="char" type-name="bpchar" not-null="true" size="2"/> <column name="fromcurrency" type="bigint" type-name="int8" not-null="true" size="19"/> <column name="tocurrency" type="bigint" type-name="int8" not-null="true" size="19"/> <column name="begin" type="date" not-null="true" size="13"/> <column name="modifier" type="smallint" type-name="int2" not-null="true" default="1" size="5"/> <column name="rate" type="numeric" not-null="true" size="10" decimal-digits="5"/> <fk name="fk_currency_of_exchange_rate_tocurrency" delete-action="restrict" to-table="galaxy11.currency" column="tocurrency"/> <fk name="fk_currency_of_exchange_rate_fromcurrency" delete-action="restrict" to-table="galaxy11.currency" column="fromcurrency"/> <index name="uq_exchangerate_type_to_from_begin" unique="true"> <on column="type"/> <on column="tocurrency"/> <on column="fromcurrency"/> <on column="begin"/> </index> <index name="uq_exchangerate_uniqueid" unique="true" column="uniqueid"/> </table> =========================================================================================================================================== And here, the generated class: the Unique Constraint "uq_exchangerate_type_to_from_begin" is missing .... package g11.persistence.model; import java.util.*; import javax.persistence.*; /** * Auto-generated by: * org.apache.openjpa.jdbc.meta.ReverseMappingTool$AnnotatedCodeGenerator */ @Entity @Table(schema="galaxy11", name="exchangerate") @IdClass(g11.persistence.model.ExchangerateId.class) public class Exchangerate { @Basic @Column(nullable=false) @Temporal(TemporalType.DATE) private Date begin; @ManyToOne(fetch=FetchType.LAZY, cascade=CascadeType.MERGE) @JoinColumn(name="fromcurrency", columnDefinition="int8", nullable=false) private Currency fkCurrencyOfExchangeRateFromcurrency; @ManyToOne(fetch=FetchType.LAZY, cascade=CascadeType.MERGE) @JoinColumn(name="tocurrency", columnDefinition="int8", nullable=false) private Currency fkCurrencyOfExchangeRateTocurrency; @Basic @Column(columnDefinition="int2") private short modifier; @Basic private double rate; @Basic @Column(columnDefinition="bpchar", nullable=false, length=2) private String type; @Id @Column(columnDefinition="int8") private long uniqueid; public Exchangerate () { } public Exchangerate (long uniqueid) { this.uniqueid = uniqueid; } public Date getBegin () { return begin; } public void setBegin (Date begin) { this.begin = begin; } public Currency getFkCurrencyOfExchangeRateFromcurrency () { return fkCurrencyOfExchangeRateFromcurrency; } public void setFkCurrencyOfExchangeRateFromcurrency (Currency fkCurrencyOfExchangeRateFromcurrency) { this.fkCurrencyOfExchangeRateFromcurrency = fkCurrencyOfExchangeRateFromcurrency; } public Currency getFkCurrencyOfExchangeRateTocurrency () { return fkCurrencyOfExchangeRateTocurrency; } public void setFkCurrencyOfExchangeRateTocurrency (Currency fkCurrencyOfExchangeRateTocurrency) { this.fkCurrencyOfExchangeRateTocurrency = fkCurrencyOfExchangeRateTocurrency; } public short getModifier () { return modifier; } public void setModifier (short modifier) { this.modifier = modifier; } public double getRate () { return rate; } public void setRate (double rate) { this.rate = rate; } public String getType () { return type; } public void setType (String type) { this.type = type; } public long getUniqueid () { return uniqueid; } public void setUniqueid (long uniqueid) { this.uniqueid = uniqueid; } } I expected: @Table(schema="galaxy11", name="exchangerate" uniqueConstraints=@Unique(columnNames={"type", "tocurrency", "fromcurrency", "begin"}) Is this a known problem? Any way to get the results I'm looking for? Specs: openJPA 2.1.0 postgresql-8.4-702.jdbc4.jar On Eclipse Helios Thanks.  John ---- Who is General Failure, and why is he reading my hard disk?
