[jira] Commented: (OPENJPA-201) Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if the table argument is used

2007-04-10 Thread Abe White (JIRA)

[ 
https://issues.apache.org/jira/browse/OPENJPA-201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12487816
 ] 

Abe White commented on OPENJPA-201:
---

I'm sorry, but I don't understand what you're trying to accomplish.  You say 
that Winery maps to two tables, but I don't see any SecondaryTable defined for 
it.  You give the results of various annotations, but I don't know what the 
actual schema looks like or what relations you want mapped to what columns.

> Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if 
> the table argument is used
> -
>
> Key: OPENJPA-201
> URL: https://issues.apache.org/jira/browse/OPENJPA-201
> Project: OpenJPA
>  Issue Type: Bug
> Environment: 0.9.7-incubating-SNAPSHOT
>Reporter: George Hongell
>Priority: Minor
> Attachments: Wine.java, Winery.java
>
>
> @Entity
> @Table(name="CxWine")
> public class Wine {
>   @Id
>   private Integer wineid;
> ...
>   @ManyToOne()
> @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="WINERYID",  
> table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored  @JoinColumn(name="NEW_WINERY_WINERYID",  table="cxWINERY")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="wineryid")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID")
>   private Winery winery;
> ...
> }
> generates
> 2744  cxwineTour  TRACE  [main] openjpa.jdbc.SQL -  98698722> executing stmnt 1325027066 CREATE TABLE CxWine (wineid INTEGER NOT 
> NULL, cost SMALLINT, description VARCHAR(254), minimumHoldYears INTEGER, 
> rating SMALLINT, stockCount INTEGER, type VARCHAR(20), version INTEGER, 
> alcoholPercent DOUBLE, ava VARCHAR(40), bottler VARCHAR(40), brandName 
> VARCHAR(40), labelWineClass VARCHAR(20), labelWineColor VARCHAR(20), 
> estateBottled SMALLINT, hasSulfites SMALLINT, labelid INTEGER, mlContents 
> INTEGER, qualityDesignation VARCHAR(40), vineyardName VARCHAR(40), vintage 
> TIMESTAMP, wineName VARCHAR(40), winery_wineryid INTEGER, PRIMARY KEY 
> (wineid))

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (OPENJPA-201) Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if the table argument is used

2007-04-09 Thread Abe White (JIRA)

[ 
https://issues.apache.org/jira/browse/OPENJPA-201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12487565
 ] 

Abe White commented on OPENJPA-201:
---

The primary table for what entity?  The primary table for the entity shown in 
your example is clearly "CxWine", but the JoinColumn references a table 
"cxWINERY".  That table doesn't appear anywhere else in the example code.  So 
if it's not the entity's table and it's not a secondary table, then it's not a 
valid mapping.

If you mean it's the primary table of the related entity, then that is not 
supported by vanilla JPA.  The JPA spec does not support one-sided relations 
based on an inverse foreign key.  You'd have to make the relation a two-sided 
relation and use "mappedBy" on the side that doesn't own the foreign key.

OpenJPA does actually support one-sided inverse-key relations, however.  We can 
go over its support in OpenJPA, but first I'd like confirmation that that's the 
intent.  It doesn't seem likely that each Winery record contains a foreign key 
to a single Wine record, so maybe I'm on the wrong track.

> Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if 
> the table argument is used
> -
>
> Key: OPENJPA-201
> URL: https://issues.apache.org/jira/browse/OPENJPA-201
> Project: OpenJPA
>  Issue Type: Bug
> Environment: 0.9.7-incubating-SNAPSHOT
>Reporter: George Hongell
>Priority: Minor
>
> @Entity
> @Table(name="CxWine")
> public class Wine {
>   @Id
>   private Integer wineid;
> ...
>   @ManyToOne()
> @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="WINERYID",  
> table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored  @JoinColumn(name="NEW_WINERY_WINERYID",  table="cxWINERY")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="wineryid")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID")
>   private Winery winery;
> ...
> }
> generates
> 2744  cxwineTour  TRACE  [main] openjpa.jdbc.SQL -  98698722> executing stmnt 1325027066 CREATE TABLE CxWine (wineid INTEGER NOT 
> NULL, cost SMALLINT, description VARCHAR(254), minimumHoldYears INTEGER, 
> rating SMALLINT, stockCount INTEGER, type VARCHAR(20), version INTEGER, 
> alcoholPercent DOUBLE, ava VARCHAR(40), bottler VARCHAR(40), brandName 
> VARCHAR(40), labelWineClass VARCHAR(20), labelWineColor VARCHAR(20), 
> estateBottled SMALLINT, hasSulfites SMALLINT, labelid INTEGER, mlContents 
> INTEGER, qualityDesignation VARCHAR(40), vineyardName VARCHAR(40), vintage 
> TIMESTAMP, wineName VARCHAR(40), winery_wineryid INTEGER, PRIMARY KEY 
> (wineid))

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (OPENJPA-201) Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if the table argument is used

2007-04-06 Thread George Hongell (JIRA)

[ 
https://issues.apache.org/jira/browse/OPENJPA-201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12487361
 ] 

George Hongell commented on OPENJPA-201:


In this case, the named table is the primary table for the entity and defined 
with a @Table(name="cxWinery") annotation. There is no SecondaryTable defined.

> Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if 
> the table argument is used
> -
>
> Key: OPENJPA-201
> URL: https://issues.apache.org/jira/browse/OPENJPA-201
> Project: OpenJPA
>  Issue Type: Bug
> Environment: 0.9.7-incubating-SNAPSHOT
>Reporter: George Hongell
>Priority: Minor
>
> @Entity
> @Table(name="CxWine")
> public class Wine {
>   @Id
>   private Integer wineid;
> ...
>   @ManyToOne()
> @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="WINERYID",  
> table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored  @JoinColumn(name="NEW_WINERY_WINERYID",  table="cxWINERY")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="wineryid")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID")
>   private Winery winery;
> ...
> }
> generates
> 2744  cxwineTour  TRACE  [main] openjpa.jdbc.SQL -  98698722> executing stmnt 1325027066 CREATE TABLE CxWine (wineid INTEGER NOT 
> NULL, cost SMALLINT, description VARCHAR(254), minimumHoldYears INTEGER, 
> rating SMALLINT, stockCount INTEGER, type VARCHAR(20), version INTEGER, 
> alcoholPercent DOUBLE, ava VARCHAR(40), bottler VARCHAR(40), brandName 
> VARCHAR(40), labelWineClass VARCHAR(20), labelWineColor VARCHAR(20), 
> estateBottled SMALLINT, hasSulfites SMALLINT, labelid INTEGER, mlContents 
> INTEGER, qualityDesignation VARCHAR(40), vineyardName VARCHAR(40), vintage 
> TIMESTAMP, wineName VARCHAR(40), winery_wineryid INTEGER, PRIMARY KEY 
> (wineid))

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.



[jira] Commented: (OPENJPA-201) Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if the table argument is used

2007-04-06 Thread Abe White (JIRA)

[ 
https://issues.apache.org/jira/browse/OPENJPA-201?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12487321
 ] 

Abe White commented on OPENJPA-201:
---

Is the named table defined as a SecondaryTable anywhere?  How is OpenJPA 
supposed to know what to do with it?  (This would still be a bug either way, 
but I'm curious whether it's a "need better mapping validation" bug or a "not 
functioning correctly" bug.)

> Mapping Tool ignores the @JoinColumn annotation in a @ManyToOne mapping if 
> the table argument is used
> -
>
> Key: OPENJPA-201
> URL: https://issues.apache.org/jira/browse/OPENJPA-201
> Project: OpenJPA
>  Issue Type: Bug
> Environment: 0.9.7-incubating-SNAPSHOT
>Reporter: George Hongell
>Priority: Minor
>
> @Entity
> @Table(name="CxWine")
> public class Wine {
>   @Id
>   private Integer wineid;
> ...
>   @ManyToOne()
> @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="WINERYID",  
> table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored @JoinColumn(name="NEW_WINERY_WINERYID", 
> referencedColumnName="WINERYID",  table="cxWinery")
> //ignored  @JoinColumn(name="NEW_WINERY_WINERYID",  table="cxWINERY")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID", referencedColumnName="wineryid")
> //ok  @JoinColumn(name="NEW_WINERY_WINERYID")
>   private Winery winery;
> ...
> }
> generates
> 2744  cxwineTour  TRACE  [main] openjpa.jdbc.SQL -  98698722> executing stmnt 1325027066 CREATE TABLE CxWine (wineid INTEGER NOT 
> NULL, cost SMALLINT, description VARCHAR(254), minimumHoldYears INTEGER, 
> rating SMALLINT, stockCount INTEGER, type VARCHAR(20), version INTEGER, 
> alcoholPercent DOUBLE, ava VARCHAR(40), bottler VARCHAR(40), brandName 
> VARCHAR(40), labelWineClass VARCHAR(20), labelWineColor VARCHAR(20), 
> estateBottled SMALLINT, hasSulfites SMALLINT, labelid INTEGER, mlContents 
> INTEGER, qualityDesignation VARCHAR(40), vineyardName VARCHAR(40), vintage 
> TIMESTAMP, wineName VARCHAR(40), winery_wineryid INTEGER, PRIMARY KEY 
> (wineid))

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.