Genereally Aries JPA should work with OpenJPA 2.4.1 but I think there is some bug in karaf 4.0.5.

I just tested again and found that persistence api 2.0 and 2.1 are both installed. This fails as Aries JPA can only bind to one of these and will choose the higher version. As a workaround you should be able to create your own feature copied from the Aries JPA feature but make sure you install the persistence api only in version 2.0.

I will try to create a working version of the features for karaf 4.0.6.

Christian


On 07.07.2016 14:07, Bengt Rodehav wrote:
Installing feature "openjpa" also installs JPA 2.0 (version 1.1) so I shouldn't need to install JPA manually as well. However, then I won't get the Aries support for JPA. Feels a bit weird.

What Aries JPa version should be used together with OpenJPA 2.4.1?

/Bengt

2016-07-07 14:04 GMT+02:00 Bengt Rodehav <[email protected] <mailto:[email protected]>>:

    It seems to be the "jpa" feature that installs JPA 2.1.

    2016-07-07 13:58 GMT+02:00 Bengt Rodehav <[email protected]
    <mailto:[email protected]>>:

        On a fresh Karaf 4.0.5 I do:

        /la | grep -i jpa/
        /la | grep -i persistence/

        Nothing is displayed. I then do:

        /feature:install openjpa jpa
        /

        If I then execute the above commands I get:

        /karaf@root()> la | grep -i jpa/
        /62 | Active   |  80 | 2.3.0               | Apache Aries JPA
        Container API/
        /63 | Active   |  80 | 2.3.0               | Apache Aries JPA
        blueprint/
        /64 | Active   |  80 | 2.3.0               | Apache Aries JPA
        container/
        /65 | Active   |  80 | 2.3.0               | Apache Aries JPA
        support/
        /71 | Active   |  80 | 1.1                 | Apache Geronimo
        JSR-317 JPA 2.0 Spec AP/
        /73 | Active   |  80 | 2.4.1               | OpenJPA Aggregate
        Jar/
        /karaf@root()> la | grep -i persistence/
        /55 | Active   |  80 | 2.1.0.v201304241213 | Java Persistence
        API 2.1/
        /karaf@root()>/

        So JPA 2.1 has indeed been installed. I don't know if this is
        why I have problems but it still seems strange.

        /Bengt


        2016-07-07 13:11 GMT+02:00 Christian Schneider
        <[email protected] <mailto:[email protected]>>:

            Can you start from an empty karaf 4.0.5 and then do

            feature:install openjpa jpa

            This should install openjpa 2.4.1 and aries jpa 2.3.0 with
            javax.persistence 2.0 and jta 1.2.

            This configuration should work. So maybe something else
            you install requires the jpa 2.1 spec.

            Christian




            On 07.07.2016 10:28, Bengt Rodehav wrote:
            Reading your post again Christian I realize that I should
            not use JPA 2.1 but JPA 2.0.

            I seem to have JPA 2.0 and JPA 2.1 installed at runtime:

            /karaf@root()> la | grep -i jpa/
            / 37 | Active   |  80 | 2.3.0         | Apache Aries JPA
            Container API/
            / 38 | Active   |  80 | 2.3.0         | Apache Aries JPA
            blueprint/
            / 39 | Active   |  80 | 2.3.0         | Apache Aries JPA
            container/
            / 40 | Active   |  80 | 2.3.0         | Apache Aries JPA
            support/
            / 70 | Active   |  80 | 1.1         | Apache Geronimo
            JSR-317 JPA 2.0 Spec API/
            /106 | Active   |  80 | 2.4.1         | OpenJPA Aggregate
            Jar/
            /karaf@root()> la | grep -i persistence/
            / 17 | Active   |  80 | 2.1.0.v201304241213   | Java
            Persistence API 2.1/
            /175 | Active   |  80 | 2.8.0.SNAPSHOT        | Connect
            :: persistence-util/

            I don't really know why the JPA version 2.1
            (2.1.0.v201304241213) is being installed. I do not do
            this explicitly.

            Looking at OpenJPA 2.4.1, it seems to depend on JTA 1.1
            not JTA 1.2.

            Looked again at my JPA version. I do use JPA 2.0. But I
            use version 1.1 of artifact geronimo-jpa_2.0_spec which
            caused me to believe I was using JPA 1.1....

            I'm still kind of confused. It would be thankful if you
            could tell me what features (and versions of those
            features) I should install in order to use the latest
            version (2.4.1) of OpenJPA.

            /Bengt



-- Christian Schneider
            http://www.liquid-reality.de

            Open Source Architect
            http://www.talend.com






--
Christian Schneider
http://www.liquid-reality.de

Open Source Architect
http://www.talend.com

Reply via email to