Affects Version/s: 2.2.2, 2.3.0, 2.4.0
Fix Version/s: None
OPENJPA-2171 introduced a dependency on xbean-asm-4 and with this JIRA I'd like to revisit that issue.
On the mailing list the TomEE folks have pointed that they need a java 6 release with xbean asm5(in support of runtime java8) and Kevin has even reverted a number of changes to trunk to rollback some of the java7(compile) support changes. I put together a patch that is similar to Romain's patch from
OPENJPA-2171 that will selectively load whichever ASM library is available for a given environment. The attached patch will also upgrade the packaged asm dependency in openjpa-all to xbean-asm-5, but that could be changed depending on the environment.
While I understand, and appreciate the need to insulate OpenJPA from ASM(breaking) changes, I don't like the fact that to use OpenJPA a user is also required to use a special version of ASM. There are scenarios where a user might already have their own 'blessed' version of ASM in use, and they don't want to have yet another copy. Allowing for selecting loading of a given ASM library should be able to satisfy both use cases.
If this seems like a reasonable way forward, I could commit this change to trunk and 2.3.x. This would mean that the TomEE folks could cut another release from the 2.3.x branch, rather than creating yet another branch for limited benefit.