Implement a vendor extension mechanism for persistence.xml and orm.xml
----------------------------------------------------------------------

                 Key: OPENJPA-1437
                 URL: https://issues.apache.org/jira/browse/OPENJPA-1437
             Project: OpenJPA
          Issue Type: New Feature
    Affects Versions: 1.2.1
            Reporter: David M. Karr


OpenJPA 1.2.1 implements version 1.0 of the JPA specification.  OpenJPA has 
some extensions that provide additional functionality, some of it identical to 
what is implemented in JPA version 2.0. For instance, the "@OrderColumn" 
annotation.  This is something I need in my application, because the database 
I'm mapping to uses a join table for an ordered list, where the join table has 
a "SEQUENCE_NUM" column to specify the ordering.

I've implemented my application only using "logical" JPA annotations, where the 
physical descriptions are in the orm.xml. Unfortunately, as there is no vendor 
extension mechanism for the orm.xml, I can't specify "order-column" in the 
orm.xml, so I have to specify it in the annotation. In addition, as the orm.xml 
attribute definition completely overrides any annotations for the same 
attribute, this means that for any attributes that I need to specify this 
ordering for, I have to put all the physical description (table, column, etc.) 
into the annotations for that field.

This particular instance of this problem will go away when I eventually move to 
the JPA 2.0 implementation, but in the future the possibility still exists that 
I or someone else might find a custom OpenJPA mapping feature to be useful or 
necessary, and be forced to specify the entire attribute details in the 
annotation, instead of the ideal (in my opinion) arrangement with the logical 
annotation and physical xml.

So, my suggestion is to somehow implement what the JPA specification didn't 
think of (that I can see), which is the ability to deploy a parallel 
OpenJPA-specific persistence.xml and orm.xml, where I can put the custom 
"order-column" element, to avoid having to do this in annotations.

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

Reply via email to