[ 
https://issues.apache.org/jira/browse/ARIES-1134?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13821484#comment-13821484
 ] 

Albert Lee commented on ARIES-1134:
-----------------------------------

TIm,

Please excuse my ignorance of the Aries project. I'm a newby in this topics.

I can understand the rationale of the objection.

We are trying to gradually upgrade our app server JPA support from 2.0 to 2.1 
spec level. In transition, we are still using 2.0 provider but would like to 
move to the JPA 2.1 API.  Since the Aries's jpa api, jpa container and jpa 
container context import level are still at [1.0.0,2.1.0), we wer unable to 
resolve the bundles, hence are requesting with the proposed changes in pom.xml 
for these Aries modules.

You indicated in the last comment that the correct version ranges should be 
[x,2.2), this will satisfy the need for our upgrade task.

Another question is the javax.persistence.* version range in the 
jpa/jpa-blueprint-aries/pom.xml is:
            <aries.osgi.import>
                javax.persistence;version="[1.0.0,3.0.0)",

Is this correct and does it need the adjustment back to [1.0.0,2.2.0) per your 
proposal?

I don't quite understand the "switching logic" requirement to support different 
versions of API.  I believe you can use an up-level version of API at runtime 
as long as application does not use the up-level interface functions.  Aries is 
still built with the JPA 2.0 API level (i.e. depends on 
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-jpa_2.0_spec</artifactId>
            <version>1.1</version>
)
and not claim to be full JPA 2.1 support. The version range change is just 
saying that it can bind to the 2.1 version of the javax.persistence.* packages 
at runtime.

To the same extent, how is Aries support and handle the API differences between 
the JPA 1.0 and 2.0 spec?

Do you have any objection to change the following to:
    jpa-api\pom.xml -
             javax.persistence;version="[1.0.0,2.2.0)",
             javax.persistence.spi;version="[1.0.0,2.2.0)",

    jpa-container\pom.xml - 
            javax.persistence;version="[1.0.0,2.2.0)",
            javax.persistence.spi;version="[1.0.0,2.2.0)",
            
javax.persistence.criteria;version="[1.1.0,2.2.0)";resolution:=optional,
            
javax.persistence.metamodel;version="[1.1.0,2.2.0)";resolution:=optional,

    jpa-container-context\pom.xml - 
            javax.persistence;version="[1.0.0,2.2.0)",
            
javax.persistence.criteria;version="[1.1.0,2.2.0)";resolution:=optional,
            
javax.persistence.metamodel;version="[1.1.0,2.2.0)";resolution:=optional,

Thanks

> Enable JPA 2.1 API and correct inconsistent <aries.osgi.import> versioning
> --------------------------------------------------------------------------
>
>                 Key: ARIES-1134
>                 URL: https://issues.apache.org/jira/browse/ARIES-1134
>             Project: Aries
>          Issue Type: Improvement
>          Components: Blueprint, JPA
>            Reporter: Albert Lee
>            Priority: Minor
>         Attachments: ARIES-1134.patch
>
>
> There are some inconsistency of <aries.osgi.import> version useage between 
> these modules:
> jpa/jpa-api/pom.xml
> jpa/jpa-container/pom.xml
> jpa/jpa-container-context/pom.xml
> jpa/jpa-container-eclipselink-adapter/pom.xml
>             javax.persistence;version="[1.0.0,2.1.0)",
>             javax.persistence.spi;version="[1.0.0,2.1.0)",
>             javax.persistence.criteria;version="[1.1.0,2.1.0)";
>             javax.persistence.metamodel;version="[1.1.0,2.1.0)";
> and 
> jpa-blueprint-aries/pom.xml
>             javax.persistence;version="[1.0.0,3.0.0)",
> I would like to propose all these modules' version updated to 
>             javax.persistence;version="[1.0.0,3.0.0)",
> so the JPA 2.1 API can be used at runtime, if enabled by the container 
> environment.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to