Re: Transaction APIs...
I've create https://issues.apache.org/jira/browse/DBCP-571 to (hopefully) get some feedback from DBCP2 devs. regards Grzegorz Grzybek pon., 1 lut 2021 o 17:57 Jean-Baptiste Onofre napisał(a): > 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 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 > >
Re: Transaction APIs...
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 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
Transaction APIs...
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