You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Michael Dick (JIRA)" <ji...@apache.org> on 2011/02/16 20:53:24 UTC

[jira] Updated: (OPENJPA-1940) ReverseMapping tool does not find primary keys with Oracle

     [ https://issues.apache.org/jira/browse/OPENJPA-1940?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Michael Dick updated OPENJPA-1940:
----------------------------------

           Description: 
When running the reverse mapping tool on Oracle we are unable to identify the primary key column for a table. 

The root cause is the prepared statement generated by OracleDictionary. The parameter value uses the qualified name for the table instead of the unqualified name (e.g. SCOTT.SimpleEntity instead of SimpleEntity). 

The output of the tool will look something like this : 

669  persistence-tests  INFO   [main] openjpa.jdbc.JDBC - Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary".
3128  persistence-tests  INFO   [main] openjpa.Tool - ReverseMappingTool : generating classes.
3132  persistence-tests  INFO   [main] openjpa.MetaData - Table "SCOTT.SIMPLEENTITY" could not be reverse mapped.  This means that the table does not have a primary key (primary keys are required to establish unique identifiers for all persistent objects) and does not match a known pattern for a table used for cross-reference or value collections.
3133  persistence-tests  INFO   [main] openjpa.Tool - Generating annotations.
3282  persistence-tests  INFO   [main] openjpa.Tool - Writing generated class source code.
3283  persistence-tests  INFO   [main] openjpa.Tool - Writing generated metadata.



  was:
The Oracle dictionary generates SQL to read PK information from the database, but uses the fully qualified table name as a parameter. 

The unqualified name should be used instead. 

     Affects Version/s: 2.1.0
                        2.2.0
         Fix Version/s: 2.2.0
    Remaining Estimate: 0h
     Original Estimate: 0h
               Summary: ReverseMapping tool does not find primary keys with Oracle  (was: Unable to obtain PK information from Oracle)

> ReverseMapping tool does not find primary keys with Oracle
> ----------------------------------------------------------
>
>                 Key: OPENJPA-1940
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1940
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: jdbc
>    Affects Versions: 2.1.0, 2.2.0
>            Reporter: Michael Dick
>            Assignee: Michael Dick
>             Fix For: 2.2.0
>
>   Original Estimate: 0h
>  Remaining Estimate: 0h
>
> When running the reverse mapping tool on Oracle we are unable to identify the primary key column for a table. 
> The root cause is the prepared statement generated by OracleDictionary. The parameter value uses the qualified name for the table instead of the unqualified name (e.g. SCOTT.SimpleEntity instead of SimpleEntity). 
> The output of the tool will look something like this : 
> 669  persistence-tests  INFO   [main] openjpa.jdbc.JDBC - Using dictionary class "org.apache.openjpa.jdbc.sql.OracleDictionary".
> 3128  persistence-tests  INFO   [main] openjpa.Tool - ReverseMappingTool : generating classes.
> 3132  persistence-tests  INFO   [main] openjpa.MetaData - Table "SCOTT.SIMPLEENTITY" could not be reverse mapped.  This means that the table does not have a primary key (primary keys are required to establish unique identifiers for all persistent objects) and does not match a known pattern for a table used for cross-reference or value collections.
> 3133  persistence-tests  INFO   [main] openjpa.Tool - Generating annotations.
> 3282  persistence-tests  INFO   [main] openjpa.Tool - Writing generated class source code.
> 3283  persistence-tests  INFO   [main] openjpa.Tool - Writing generated metadata.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira