[
https://issues.apache.org/jira/browse/TOMEE-3849?focusedWorklogId=762931&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-762931
]
ASF GitHub Bot logged work on TOMEE-3849:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 27/Apr/22 14:50
Start Date: 27/Apr/22 14:50
Worklog Time Spent: 10m
Work Description: eric-hamilton-ngc opened a new pull request, #873:
URL: https://github.com/apache/tomee/pull/873
Restore use of JPA resources in server libraries
Issue Time Tracking
-------------------
Worklog Id: (was: 762931)
Remaining Estimate: 0h
Time Spent: 10m
> EclipseLink JPA provider not discoverable in TomEE Plume libraries
> ------------------------------------------------------------------
>
> Key: TOMEE-3849
> URL: https://issues.apache.org/jira/browse/TOMEE-3849
> Project: TomEE
> Issue Type: Bug
> Components: TomEE Core Server
> Affects Versions: 8.0.7, 8.0.8, 8.0.9, 8.0.10, 8.0.11
> Reporter: Eric Hamilton
> Priority: Major
> Labels: JPA, eclipselink, openjpa
> Attachments: TestWeb.zip
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> A Java web application is unable to use the default EclipseLink JPA provider
> that is included in the TomEE Plume distributable. JPA is only able to
> discover the OpenJPA provider within the TomEE server libraries. Attached
> TestWeb application to reproduce the issue. This configuration was working
> in TomEE Plume 8.0.6, and behavior was changed in 8.0.7.
>
> Web application persistence.xml configured with EclipseLink JPA:
> {code:java}
> <persistence-unit name="TestJPA" transaction-type="RESOURCE_LOCAL">
> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
> {code}
>
> JPA fails to load with error:
> {code:java}
> javax.persistence.PersistenceException: No persistence providers available
> for "TestJPA" after trying the following discovered implementations:
> org.apache.openjpa.persistence.PersistenceProviderImpl{code}
>
> Workaround 1:
> Copy the the EclipseLink library into the web application libraries. Then
> JPA will discover both the OpenJPA and EclipseLink providers from the Java
> web application.
>
> Workaround 2:
> Append CATALINA_OPTS with JVM property
> "openejb.classloader.filterable-resources" using default value excluding
> "META-INF/services/javax.persistence.spi.PersistenceProvider":
> {code:java}
> -Dopenejb.classloader.filterable-resources=META-INF/services/javax.validation.spi.ValidationProvider,META-INF/services/javax.ws.rs.client.ClientBuilder,META-INF/services/javax.json.spi.JsonProvider,META-INF/services/javax.cache.spi.CachingProvider,META-INF/javamail.default.providers,META-INF/javamail.default.address.map,META-INF/javamail.charset.map,META-INF/mailcap,org/slf4j/impl/StaticLoggerBinder.class{code}
>
--
This message was sent by Atlassian Jira
(v8.20.7#820007)