Hi, Thanks for sharing. I will comment in the issue.
1. Karaf spec effort should cleanup the export to "force" the use of bundles (and limit jre.properties). 2. If DBCP2 is really problematic, we can always "wrap" is, fixing the headers, at Karaf (as we do for some bundles). Regards JB > Le 1 févr. 2021 à 17:39, Grzegorz Grzybek <gr.grzy...@gmail.com> a écrit : > > Hello > > I was checking how to make Pax Transx project more consistent wrt JTA 1.2 > APIs. So I started digging and added my findings to > https://github.com/ops4j/org.ops4j.pax.transx/issues/33 > > (btw - I've migrated first Pax project - Pax Transx - from OPS4J Jira to > Github issues) > > I don't want to copy entire investigation here, but summarizing: > > - javax.transaction/javax.transaction-api/1.2 works best in Karaf > because it has ... `Require-Bundle: system.bundle` > - javax.transaction/javax.transaction-api/1.3 imports (but doesn't > export) "javax.transaction.xa" package, which is exported by Karaf (and > available in JDK 8/9+) only with confusing `partial=true; > mandatory:=partial` decorations > - Karaf should NOT export `javax.transaction` package in > etc/jre.properties on JDK11, as there's no such package in JDK11. > Fortunately it's also exported with the above decorations, so normal bundle > (importing `javax.transaction` package) won't resolve anyway > - the problematic bundle is DBCP2 which uses the _partial_ attribute, > but fortunately (and even in more confusing way) only for > `javax.transaction.xa` package, which is definitely not partial at all > (it's complete both in JDK 8 and 9+) > > I invite you to comment under > https://github.com/ops4j/org.ops4j.pax.transx/issues/33 if you have any > ideas. > > kind regards > Grzegorz Grzybek