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

Reply via email to