okay, https://issues.jboss.org/browse/AS7-928 is resolved and will be released in AS7 7.0.2, finally :)
I will write a doc along with https://docs.jboss.org/author/display/AS7/JPA+Reference+Guide ----------- Strong Liu <st...@hibernate.org> http://hibernate.org http://github.com/stliu On Aug 16, 2011, at 8:32 PM, Scott Marlow wrote: > Strong, > > Looks good, nice unit tests also! :) > > Scott > > On 08/16/2011 12:13 AM, Strong Liu wrote: >> Hello guys, >> >> I just pushed the fix of this issue to my folk, take a look >> https://github.com/stliu/jboss-as/commit/4f8bce12c6cc90415d697d321442f827287cde1c >> >> as https://docs.jboss.org/author/display/AS7/JPA+Reference+Guide said, there >> are 3 ways to use hibernate (different version) in AS7 >> 1. the default/bundled one, hibernate core 4, in as7 >> 2. bundle hibernate jars in app (hibernate-bundled property) >> 3. create a shared hibernate 3 module (with slot 3) >> >> so, here are how to use envers within these 3 cases: >> 1. use bundled envers module, nothing specical needed, just annotate envers >> annotations to your entity >> 2. bundle envers along with hibernate 3 jars in your app, and set envers >> listeners (check envers doc) >> 3. create a org.hibernate.envers:main:3 module (not tested yet) >> >> note: you need to use hibernate-core build from source (HHH-6573) >> >> >> ----------- >> Strong Liu<st...@hibernate.org> >> http://hibernate.org >> http://github.com/stliu >> >> On Aug 4, 2011, at 8:35 PM, Scott Marlow wrote: >> >>> On 08/04/2011 04:05 AM, Strong Liu wrote: >>>> >>>> ----------- >>>> Strong Liu<st...@hibernate.org> >>>> http://hibernate.org >>>> http://github.com/stliu >>>> >>>> On Aug 4, 2011, at 2:48 AM, Adam Warski wrote: >>>> >>>>> >>>>> On Aug 3, 2011, at 5:44 PM, Strong Liu wrote: >>>>> >>>>>> Hi there, >>>>>> >>>>>> I get envers embedded into as7 :D >>>>>> >>>>>> see below: >>>>>> >>>>>> https://github.com/stliu/hibernate-core/tree/classloading >>>>>> https://github.com/stliu/jboss-as/tree/as7-928-2 >>>>>> >>>>>> 1. org.hibernate module and org.hibernate.envers module depends on each >>>>>> other. >>>>>> 2. org.hibernte.envers module automaticly injected into app when it is a >>>>>> jpa project. >>>>>> 3. >>>>>> org.jboss.as.testsuite.integration.jpa.hibernate.envers.BasicEnversTestCase >>>>>> in as7/testsuite/integration passes >>>>>> 4. use org.hibernate.integrator.internal.ServiceLoader instead >>>>>> java.util.ServiceLoader to load META-INF/services file >>>>>> this custom ServiceLoader uses ClassLoaderService. >>>>>> >>>>>> sounds okay? >>>>> >>>>> >>>>> Great! :) Can't wait to see it in the main repo ;) >>>>> >>>>> I also managed to make an envers module for AS7, as I already described >>>>> on the forum. What you need is a: >>>>> * new module with the envers jar and following deps: >>>>> <module name="org.hibernate"/> >>>>> <module name="org.jboss.logging"/> >>>>> <module name="org.dom4j"/> >>>>> <module name="javax.api"/> >>>>> <module name="javax.persistence.api"/> >>>>> <module name="javax.transaction.api"/> >>>>> <module name="org.javassist"/> >>>>> * Dependencies: org.hibernate.envers services in your META-INF >>>>> >>>>> What I didn't realize before (and that's why I couldn't make it working) >>>>> is that the dependencies declaration in the app's meta-inf affects the >>>>> interaction between modules. >>>>> >>>>> Still the bundled-envers-only-inside-app scenario doesn't work. But I'm >>>>> not sure it's valid any more, as I've got it working in AS7 and you've >>>>> done the integration for AS7.1. So do you still need the demo app? >>>> >>>> yeah, that's may not valid anymore, if users want to use hibernate envers >>>> 3, it should bundle both hibernate core and envers 3 into app, right, >>>> Scott? >>> >>> Some doc on bundling hibernate 3 is included here >>> https://docs.jboss.org/author/display/AS7/JPA+Reference+Guide >>> (contributions to the Confluence doc are easy to make and welcome ;) >>> >>> Some users are starting to experiment with the AS 7.0.1 support for >>> bundling Hibernate 3 for JPA usage. Some are also using the ability to >>> manually create a shared Hibernate 3 module. As of yesterday, I made a >>> slight change to the organization of the Hibernate modules on AS 7.0.1. >>> Rather than including version numbers in the module name, I'm using the AS7 >>> module "slot" mechanism to version the module contents. So, module >>> "org.hibernate" contains a slot (really a sub-folder) named "main" for >>> Hibernate 4 and can contain a slot named "3" for Hibernate 3. >>> >>> In theory, someone could try bundling envers 3 if they are bundling >>> Hibernate 3 with their app. If they are creating their own >>> "as7/modules/org/hibernate/3" sub-folder to hold the Hibernate 3 jars, they >>> could put the jar in there or create a new "3" slot in the envers module >>> folder (would have envers/main for Hibernate4 and envers/3 for Hibernate3). >>> Creating the "3" slot (with contents) is left as an exercise for the user. >>> >>> Strong, have you synced your patch with the AS7 master yet? I restructured >>> things a bit in the last few weeks, to better support multiple persistence >>> providers. A few more changes are needed but the major rework is done. >>> The AS7 jpa source tree, is now broken into core, spi, hibernate3, >>> hibernate4. The Hibernate folders contain integration classes for their >>> respective Hibernate versions. On a private branch, I started creating a >>> generic integration adapter that might be used for other providers (not >>> sure if that will work yet, might need to have provider specific >>> integration classes external to AS7). >>> >>> I probably gave more information than you wanted for the question. :) >>> >>> Scott >>>>> >>>>> Adam >>>>> >>>>> -- >>>>> Adam Warski >>>>> >>>>> http://twitter.com/#!/adamwarski >>>>> http://www.softwaremill.com >>>>> http://www.warski.org >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>> >> > _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev