[jbossseam-issues] [JBoss JIRA] Closed: (JBSEAM-1820) unique=true attribute of primary key in generated class prevents the schema to be regenerated
Ali Sadik Kumlali (JIRA)
jira-events at lists.jboss.org
Sun Aug 19 19:58:00 EDT 2007
[ http://jira.jboss.com/jira/browse/JBSEAM-1820?page=all ]
Ali Sadik Kumlali closed JBSEAM-1820.
-------------------------------------
Resolution: Done
I'll create a new one, if it will be necessary.
> unique=true attribute of primary key in generated class prevents the schema to be regenerated
> ---------------------------------------------------------------------------------------------
>
> Key: JBSEAM-1820
> URL: http://jira.jboss.com/jira/browse/JBSEAM-1820
> Project: JBoss Seam
> Issue Type: Bug
> Components: Tools
> Affects Versions: 2.0.0.BETA1
> Environment: OS: Windows Vista 6.0,x86
> Database: Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
> Java VM: Java HotSpot(TM) Server VM 1.5.0_11-b03,Sun Microsystems Inc.
> Seam: jboss-seam-2.0.0.BETA1
> Reporter: Ali Sadik Kumlali
> Priority: Trivial
>
> - Create PEOPLE table using following script:
> CREATE TABLE PEOPLE ("ID" NUMBER NOT NULL, "SURNAME" VARCHAR2(50 BYTE), "NAME" VARCHAR2(25 BYTE), CONSTRAINT "PEOPLE_PK" PRIMARY KEY ("ID"));
> - Generate entities:
> c:\seam>seam generate-entities
> - Annotation of primary key column(ID) found in People.java should have "unique = true" attribute:
> @Id
> @Column(name = "ID", unique = true, nullable = false, precision = 22, scale = 0)
> @NotNull
> public BigDecimal getId() {
> return this.id;
> }
> - Drop the PEOPLE table:
> DROP TABLE "PEOPLE" CASCADE CONSTRAINTS;
> - To force the schema to be generated from entity classes, redeploy application:
> c:\seam\examples\people_sample>ant
> - Dig inside the server logs. You should see an error:
> 02:00:36,956 INFO [SchemaExport] Running hbm2ddl schema export
> 02:00:36,959 INFO [SchemaExport] exporting generated schema to database
> 02:00:37,215 ERROR [SchemaExport] Unsuccessful: create table PEOPLE (ID number(22,0) not null unique, NAME varchar2(25 c
> har), SURNAME varchar2(50 char), primary key (ID))
> 02:00:37,217 ERROR [SchemaExport] ORA-02261: such unique or primary key already exists in the table
> - Remove unique=true attribute from @Column annotation and compile/redeploy the application. You should see table PEOPLE is created and logs are fine.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the seam-issues
mailing list