Use https://repo.maven.apache.org/maven2/org/apache/openjpa/openjpa/3.2.2/openjpa-3.2.2-jakarta.jar and exclude transitive deps.
Le mer. 28 déc. 2022 à 08:45, Francesco Chicchiriccò <ilgro...@apache.org> a écrit : > On 27/12/22 17:14, Romain Manni-Bucau wrote: > > Yes, think you should either move to openjpa-all shade or generate the > > class with asm at build time (guess switching the main dep is easier). > > Unfortunately just switching to openjpa-all does not change the errors I > am reporting below. > > When I look inside > > > https://repo1.maven.org/maven2/org/apache/openjpa/openjpa-all/3.2.2/openjpa-all-3.2.2.jar > > what should I be able to see exactly? e.g. what would be the effect of the > relocation settings in > > https://github.com/apache/openjpa/blob/master/openjpa/pom.xml#L100 > > ? > > In case this option is not viable: would you be able to suggest how to > proceed with asm-based alternative you are mentioning above? > TIA. > > Regards. > > > Le mar. 27 déc. 2022 à 17:06, Maxim Solodovnik <solomax...@gmail.com> a > > écrit : > > > >> Sorry fir top-posting > >> > >> Maybe we shall release Jakarta version? > >> As 4.x for ex? > >> > >> from mobile (sorry for typos ;) > >> > >> > >> On Tue, Dec 27, 2022, 23:01 Francesco Chicchiriccò <ilgro...@apache.org > > > >> wrote: > >> > >>> On 27/12/22 16:50, Romain Manni-Bucau wrote: > >>>> Hi, > >>>> > >>>> Well I guess the jakarta shade should handle jakarta properly else > user > >>> can > >>>> use what he wants and finally worse case you can still integrate the > >>>> mapping in spring glue code (not sure you have something particular in > >>> mind > >>>> so shouting in the wind ;)). > >>> For instance, I would like to keep these classes [1] working, but when > I > >>> attempt to build it, I am receiving the following errors: > >>> > >>> [ERROR] > >>> > >> > /home/ilgrosso/work/syncope/fork/core/persistence-jpa/src/main/java/org/springframework/orm/jpa/vendor/OpenJpaDialect.java:[56,55] > >>> cannot access javax.persistence.EntityTransaction > >>> [ERROR] class file for javax.persistence.EntityTransaction not found > >>> [ERROR] > >>> > >> > /home/ilgrosso/work/syncope/fork/core/persistence-jpa/src/main/java/org/springframework/orm/jpa/vendor/OpenJpaDialect.java:[89,34] > >>> no suitable method found for cast(jakarta.persistence.EntityManager) > >>> [ERROR] method > >>> > >> > org.apache.openjpa.persistence.OpenJPAPersistence.cast(javax.persistence.EntityManagerFactory) > >>> is not applicable > >>> [ERROR] (argument mismatch; jakarta.persistence.EntityManager > >> cannot > >>> be converted to javax.persistence.EntityManagerFactory) > >>> [ERROR] method > >>> > >> > org.apache.openjpa.persistence.OpenJPAPersistence.cast(javax.persistence.EntityManager) > >>> is not applicable > >>> [ERROR] (argument mismatch; jakarta.persistence.EntityManager > >> cannot > >>> be converted to javax.persistence.EntityManager) > >>> [ERROR] method > >>> > >> > org.apache.openjpa.persistence.OpenJPAPersistence.cast(javax.persistence.Query) > >>> is not applicable > >>> [ERROR] (argument mismatch; jakarta.persistence.EntityManager > >> cannot > >>> be converted to javax.persistence.Query) > >>> [ERROR] > >>> > >> > /home/ilgrosso/work/syncope/fork/core/persistence-jpa/src/main/java/org/springframework/orm/jpa/vendor/OpenJpaVendorAdapter.java:[46,61] > >>> cannot access javax.persistence.spi.PersistenceProvider > >>> [ERROR] class file for javax.persistence.spi.PersistenceProvider not > >>> found > >>> [ERROR] > >>> > >> > /home/ilgrosso/work/syncope/fork/core/persistence-jpa/src/main/java/org/springframework/orm/jpa/vendor/OpenJpaVendorAdapter.java:[122,46] > >>> incompatible types: > >>> > >> > java.lang.Class<org.apache.openjpa.persistence.OpenJPAEntityManagerFactorySPI> > >>> cannot be converted to java.lang.Class<? extends > >>> jakarta.persistence.EntityManagerFactory> > >>> [ERROR] > >>> > >> > /home/ilgrosso/work/syncope/fork/core/persistence-jpa/src/main/java/org/springframework/orm/jpa/vendor/OpenJpaVendorAdapter.java:[127,39] > >>> incompatible types: > >>> java.lang.Class<org.apache.openjpa.persistence.OpenJPAEntityManagerSPI> > >>> cannot be converted to java.lang.Class<? extends > >>> jakarta.persistence.EntityManager> > >>> > >>> Given Maxim's and yours answer about openjpa-all, I believe I'll need > to > >>> either depend on that or shade OpenJPA artifacts right on Syncope poms: > >>> correct? > >>> > >>> Regards. > >>> > >>> [1] > >>> > >> > https://github.com/apache/syncope/blob/master/core/persistence-jpa/src/main/java/org/springframework/orm/jpa/vendor > >>>> Le mar. 27 déc. 2022 à 16:21, Francesco Chicchiriccò < > >>> ilgro...@apache.org> > >>>> a écrit : > >>>> > >>>>> Hi all, > >>>>> so let's suppone one has the weird idea of adding OpenJPA to a Spring > >>> Boot > >>>>> 3 project. > >>>>> > >>>>> Do we already an idea about how to handle the javax.persistence.* Vs > >>>>> jakarta.persistence.* conflicts? > >>>>> > >>>>> Thanks in advance. > >>>>> Regards. > > -- > Francesco Chicchiriccò > > Tirasa - Open Source Excellence > http://www.tirasa.net/ > > Member at The Apache Software Foundation > Syncope, Cocoon, Olingo, CXF, OpenJPA, PonyMail > http://home.apache.org/~ilgrosso/ > >