Kevin, I agree that we should make enhancement as transparent as possible to make out-of-the-box experience as smooth as possible. I also feel that we should not promote subclassing because of the similar reasons you have cited. Class redefinition will fall in the same bucket as subclassing.
Currently we have several options for enhancement: 1. Enhance as a post-compilation step in an ant/maven build script 2. Run the app with -javaagent switch 3. Eclipse IDE lovers can even use the new plugin (shameful plug;) what are the shortcomings or lack of transparency in any of the above three alternatives? But as I am still in the dark ages of (1) and just recently started eating my own dog food with (3) -- may be I do not appreciate the difficulty of out-of-the-box experience. I thought you yourself are in camp (2). JDK6 facilities of Annotation processing plugs transparently with compilation phase using a service discovery framework -- and that can be another avenue for those of you who are still looking to make this essential enhancement step further transparent. However, given that we have some reasonably transparent (imo) mechanics already in place, if advanced expertise of bytecode/classloading is focused elsewhere (say, the longstanding issue of making OpenJPA compile with JDK6 -- OPENJPA-5) -- it perhaps will add more value. -- View this message in context: http://n2.nabble.com/-jira--Created%3A-%28OPENJPA-952%29-Utilize-Sun-JDK%27s-Attach-API-to-dynamically-load-the-OpenJPA-enhancer-agent-tp2417786p2423343.html Sent from the OpenJPA Developers mailing list archive at Nabble.com.
