openjpa-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Polliard <tho...@polliard.com>
Subject Re: Question about Unique Contraint
Date Wed, 20 Jan 2010 03:13:46 GMT
@Entity
@Table(name="ACCOUNT",uniqueConstraints=@Unique(columnNames="ACCOUNTNAME"))
public class Account {
	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	private Integer accountId = null;
	@Basic
	private String accountName = null;
	@Basic
	private Date creationDate = null;
	@ManyToMany(cascade=CascadeType.ALL)
	private List<Host> hostList = new ArrayList<Host>();

....


Results in 
compile:
    [javac] Compiling 4 source files to /Users/polliard/Workspace/Example JPA/build
    [javac] /Users/polliard/Workspace/Example JPA/src/com/trukoda/examples/jpa/Account.java:19:
incompatible types
    [javac] found   : org.apache.openjpa.persistence.jdbc.Unique
    [javac] required: javax.persistence.UniqueConstraint
    [javac] @Table(name="ACCOUNT",uniqueConstraints=@Unique(columnNames="ACCOUNTNAME"))
    [javac]                                          ^
    [javac] Note: /Users/polliard/Workspace/Example JPA/src/com/trukoda/examples/jpa/MainQuery.java
uses unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 1 error


So if that example does exist it must not compile correctly.

Thanks for taking a look though.

Thomas
On Jan 19, 2010, at 10:01 PM, Ravi Palacherla wrote:

> Hi,
> 
> http://java.sun.com/javaee/5/docs/api/index.html?javax/persistence/Table.html
> 
> As per the above link the one mentioned in openJPA document is  supposed to work.
> (http://openjpa.apache.org/builds/1.0.2/apache-openjpa-1.0.2/docs/manual/ref_guide_mapping_jpa.html#ref_guide_mapping_jpa_unique)
> 
> I also saw the following in openJPA example:
> 
> @Entity
> @Table(name="ART", uniqueConstraints=@Unique(columnNames="TITLE"))
> public class Article {
>    ...
> }
> 
> http://openjpa.apache.org/builds/latest/docs/manual/manual.html#jpa_overview_mapping_identityex
> 
> Please try if the above works.
> 
> Regards,
> Ravi.
> 
> -----Original Message-----
> From: Thomas Polliard [mailto:thomas@polliard.com] 
> Sent: Tuesday, January 19, 2010 7:50 PM
> To: users@openjpa.apache.org
> Subject: Question about Unique Contraint
> 
> public class Account {
> 	@Id
> 	@GeneratedValue(strategy=GenerationType.AUTO)
> 	private Integer Id = null;
> 	@Unique
> 	private String accountName = null;
> 	@Basic
> 	private Date creationDate = null;
> 	@ManyToMany(cascade=CascadeType.ALL)
> 	private List<Host> hostList = new ArrayList<Host>();
> 
> However, in the database it actually doesn't restrict the accountName but rather forces
a new ID to be generated with the same accountName. What page can I find out about creating
a Unique constraint that mimics this in pseudo database ddl
> 
> create table Account (
> 	Id		int4		PRIMARY KEY,
> 	accountname	varchar(255)	NOT NULL UNIQUE,
> 	.....
> 
> 
> Thanks for the assistance.
> 
> Thomas
> 
> 
> PS:
> 
> http://openjpa.apache.org/builds/1.0.2/apache-openjpa-1.0.2/docs/manual/ref_guide_mapping_jpa.html#ref_guide_mapping_jpa_unique
> 
> Doesn't appear to be the proper Annotation.
> 


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message