Jeremy, Re: incompatible method signatures... I agree. We definitely do need to address this. Since the spec overrides our implementation, we might just have a migration issue for our customers. Hopefully, this hasn't been used extensively. Maybe we should open a sub-task JIRA issue to keep track of this issue. Or, maybe we need a wiki page or something to keep track of these migration issues. I'm sure this won't be the last one we run into... thoughts?
Kevin On Wed, Nov 26, 2008 at 9:30 PM, Jeremy Bauer (JIRA) <[EMAIL PROTECTED]>wrote: > > [ > https://issues.apache.org/jira/browse/OPENJPA-773?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12651235#action_12651235] > > Jeremy Bauer commented on OPENJPA-773: > -------------------------------------- > > Attached patches to GERINIMO-4410 for the remainder of the spec API updates > based on the 10/31/2008 JSR-317 draft. They were committed by David Jencks > under revision 718393. Corresponding OpenJPA updates were committed under > 721073. New methods were stubbed out and will throw an > UnsupportedOperationException containing the message: "JPA 2.0 - Method not > yet implemented". > > One issue I ran into is that the javax.persistence.Query interface in the > JPA 2.0 spec added a method with the signature: > > public List getPositionalParameters() > > OpenJPA's Query implementation class > (org.apache.openjpa.persistence.QueryImpl) and OpenJPA interface > (org.apache.openjpa.persistence.OpenJPAQuery) contained a public method with > this signature: > > public Object[] getPositionalParameters() > > resulting in an incompatible method signature. Having identically named, > same parameter, methods with different return types is not allowed in Java. > > This method is only called in one location internally. So, for the time > being the public method signature on the OpenJPA class and interface have > been changed and the method caller has been modified to use the new method. > However, this is a public interface so, in my opinion, the change should > be discussed and approved by the community. Minimally, the change needs to > be documented. > > > > > > Upgrade to JPA 2 > > ---------------- > > > > Key: OPENJPA-773 > > URL: https://issues.apache.org/jira/browse/OPENJPA-773 > > Project: OpenJPA > > Issue Type: New Feature > > Reporter: Pinaki Poddar > > Assignee: Jeremy Bauer > > Fix For: 2.0.0 > > > > > > Here are few basic points on upgrading to JPA 2.0 API. This is an effort > to consolidate the ongoing discussion on this issue and some how-to steps > for those who are involved in developing JPA 2.0 features or writing tests. > > 1. A draft version of JPA 2.0 Specification is published on Oct 31, 2008 > [1] > > 2. The source code of the new and modified JPA API is not available > > 3. OpenJPA community has decided > > a) to develop its own version of JPA API Source code according to the > spec [2]. > > This decision helps us to control our own destiny especially in > terms of few implemented classes. > > b) JPA API 2.0 Source will reside in Geronimo Source Code repository > [2]. > > Geronimo Developer Mr.David Jencks will commit the source on > behalf of OpenJPA. > > c) JPA 2.0 related development work will be carried out on OpenJPA > trunk [3] > > Few basic steps on the process > > 1. Check out the JPA 2.0 API Source code from Geronimo SVN [4] > > 2. Modify or add the new API or Annotation > > 3. Create a patch and post the patch to Geronimo JIRA-4410 [5] > > 4. After David has committed the patch, add a test case to OpenJPA that > exercises the modified API > > even if the implementation of the API is incomplete. Simply annotate > the test class > > with @AllowFailure. Please refer to [6] for further details. > > 5. One iteration of the above steps were followed to add new Criteria > API. The new API sources > > generated a snapshot version of JPA API jar. OpenJPA Maven build > scripts are accordingly > > updated [7] to link against this new jar. > > > > [1] http://jcp.org/aboutJava/communityprocess/edr/jsr317/index.html > > [2] > http://n2.nabble.com/Updating-the-JPA-spec-jar-for-JPA-2.0-tt1482013.html > > [3] http://n2.nabble.com/JPA-2.0-development-plans...-tt1129341.html > > [4] > https://svn.apache.org/repos/asf/geronimo/specs/trunk/geronimo-jpa_2.0_spec/ > > [5] http://issues.apache.org/jira/browse/GERONIMO-4410 > > [6] https://issues.apache.org/jira/browse/OPENJPA-766 > > [7] https://issues.apache.org/jira/browse/OPENJPA-772 > > -- > This message is automatically generated by JIRA. > - > You can reply to this email to add a comment to the issue online. > >
