If that does not slow down the test suite significantly, I'd favor a module to limit project explosion.
On 5 oct. 2012, at 06:56, Scott Marlow <smar...@redhat.com> wrote: > On 10/05/2012 06:16 AM, Sanne Grinovero wrote: >> Thanks Scott, that documentation arrived just in time: >> https://forum.hibernate.org/viewtopic.php?f=31&t=1024476 >> >> It looks like we could simplify things by creating an AS7 module, and >> release it in tandem with an OGM release. >> >> What could be the best way to distribute this module? > > A few different ways that we could proceed. In the OGM project, we could > assemble an AS7 module that is ready to drop into the AS7 root folder. This > wouldn't include the OGM integration code module (which we haven't needed to > write but could to make it easier to use OGM with AS7). > > Another way, would be to start a new project that packages the OGM provider > into a ready to use AS7 module. We could also package the OGM integration > code (persistence provider adapter) in this new project. > >> >> Is there a "clean" way to create one? (by "clean" I mean possibly not >> relying on the Maven assembly plugin, and more importantly making >> something which can be tested in automation) > > If we create a new project for this, I'm open to suggestions for how to > create the module from within the project (whether its with Maven, Ant, Ivy > or something else). > >> >> Sanne >> >> >> On 1 October 2012 23:21, Sanne Grinovero <sa...@hibernate.org> wrote: >>> You don't have to build it but having it in the cache woud help :) >>> >>> The test is building and materializing an AS7 module on the filesystem >>> containing all dependencies, including Hibernate Search (among others) >>> and uses ShrinkWrap to do that; if you look in the test you should >>> find a line which forces it to stay offline (as it was massively slow >>> otherwise), you should comment that line at least once so that it >>> downloads all what it needs. >>> >>> On 1 October 2012 19:39, Scott Marlow <smar...@redhat.com> wrote: >>>> On 10/01/2012 12:23 PM, Sanne Grinovero wrote: >>>>> >>>>> On 1 October 2012 17:08, Scott Marlow <smar...@redhat.com> wrote: >>>>>> >>>>>> On 10/01/2012 11:05 AM, Sanne Grinovero wrote: >>>>>>> >>>>>>> >>>>>>> On 1 October 2012 15:51, Scott Marlow <smar...@redhat.com> wrote: >>>>>>>> >>>>>>>> >>>>>>>> I got further yesterday (after removing the ---PlaceHolderDSForOGM--- >>>>>>>> property from HibernateOgmPersistence). Not sure what the long term >>>>>>>> change is (perhaps we should only add the ---PlaceHolderDSForOGM--- for >>>>>>>> the non-container case). >>>>>>> >>>>>>> >>>>>>> >>>>>>> Nice. Is the AS still "mandating" a specific module name and injecting >>>>>>> Hibernate 3? >>>>>> >>>>>> >>>>>> >>>>>> The OGM module name should be org.hibernate:ogm. The org.hibernate:ogm >>>>>> module should depend on Hibernate 4 (org.hibernate:main) and Hibernate 4 >>>>>> should depend on OGM. >>>>> >>>>> >>>>> I'm still not understanding why we need to hardcode a constant module >>>>> name for the OGM provider, that's unintuitive and brought me a lot of >>>>> pain when trying to use a *different* version, when recently trying >>>>> out your instructions. >>>>> >>>>> I might want to deploy OGM using a different version of Hibernate ORM >>>>> than what I have in another OGM-using application; also it is very >>>>> likely that soon OGM will require a version which is not the one >>>>> bundled in the AS. >>>>> >>>>> I would expect the module to be something I can configure in my own >>>>> application: >>>>> >>>>> >>>>> https://github.com/Sanne/ogm-kitchensink/blob/as711/src/main/webapp/WEB-INF/jboss-deployment-structure.xml >>>>> >>>>> it should be possible to use a different module name, how could I deal >>>>> with multiple deployments otherwise? The AS should not mandate the >>>>> module dependency, at best it could take some hint like you do with >>>>> the _jboss.as.jpa.adapterModule_ property >>>>> >>>>> >>>>> https://github.com/Sanne/ogm-kitchensink/blob/as711/.openshift/config/modules/org/hibernate/ogm/module.xml >>>>> >>>>> I didn't need any datasource, this worked fine: >>>>> >>>>> https://github.com/Sanne/ogm-kitchensink/blob/as711/src/main/resources/META-INF/persistence.xml >>>> >>>> >>>> I tried building https://github.com/Sanne/ogm-kitchensink (as711 branch) >>>> locally but got an error: >>>> >>>> Caused by: org.sonatype.aether.resolution.ArtifactResolutionException: The >>>> repository system is offline but the artifact >>>> org.hibernate:hibernate-search-orm:jar:4.1.1.Final is not available in the >>>> local repository. >>>> >>>> Do I need to build search locally to use this example? >>>> >>>> >>>>> >>>>> Sanne >>>>> >>>>>>> Last time I was trying that was driving me nuts, as to workaround it I >>>>>>> needed lots of changes in AS. >>>>>> >>>>>> >>>>>> >>>>>> We should either create a blog update to explain this or as previously >>>>>> discussed on this thread, document the changes needed. >>>>>> >>>>>> http://pastie.org/4891854 is my current persistence.xml that I'm testing >>>>>> with. >>>>>> >>>>>> I had to set jboss.as.jpa.adapterModule to org.jboss.as.jpa.hibernate:4, >>>>>> so >>>>>> that we would use the Hibernate 4 integration code with OGM. >>>>>> >>>>>> I also had to set jboss.as.jpa.classtransformer to false so that we >>>>>> wouldn't >>>>>> try to create the EntityManagerFactory too soon (should probably verify >>>>>> if >>>>>> that is still needed). >>>>>> >>>>>> >>>>>>> >>>>>>> I would expect to not have any OGM-specific code in the AS, but that >>>>>>> it should be good enough to implement the JPA spec correctly regarding >>>>>>> the provider implementation? >>>>>> >>>>>> >>>>>> >>>>>> I sometimes hear that question (why don't you just use the JPA spec >>>>>> bootstrapping). However, we are allowed by the JPA specification, to >>>>>> pass a >>>>>> map of integration properties when calling the >>>>>> >>>>>> PersistenceProvider.createContainerEntityManagerFactory(PersistenceUnitInfo, >>>>>> Map integrationProperties) call. Sometimes, the persistence providers >>>>>> include enough version specific application server integration code, so >>>>>> that >>>>>> app servers find that its good enough to just call the JPA spec >>>>>> invocation >>>>>> but in practice this breaks when the app servers change too much. >>>>>> >>>>>> For AS7, I created persistence provider adapters that (optionally) >>>>>> contain >>>>>> the extra integration code that is not handled by the JPA specification. >>>>>> For AS 8.0, I want to change the relationship between the persistence >>>>>> provider adapters and providers to be less tightly coupled (its currently >>>>>> a >>>>>> 1-1) but they make developing JPA applications for AS7 easier for the >>>>>> developer (fewer properties have to be passed in). >>>>>> >>>>>> >>>>>>> >>>>>>>> >>>>>>>> http://pastie.org/4891549 is the out from running one of the example >>>>>>>> applications (jboss-javaee6-webapp). Obviously, I need to try a >>>>>>>> different test. ;) >>>>>>> >>>>>>> >>>>>>> >>>>>>> Right, you might need to simplify an existing test, or take the >>>>>>> ogm-kitchensink as a starting point: >>>>>>> take branch as711 from: >>>>>>> git://github.com/Sanne/ogm-kitchensink.git >>>>>>> >>>>>>> Hardy originally wrote that demo, but I don't remember if we ever >>>>>>> integrated my changes from that branch to have it run on AS 7.1.1. >>>>>>> >>>>>>>> For AS documentation, I'm not sure if we are ready to add that yet (it >>>>>>>> would be experimental with the goal of helping someone get started). >>>>>>>> I'm open to suggestions but I think we could build on what I blogged >>>>>>>> about last year here >>>>>>>> >>>>>>>> >>>>>>>> http://in.relation.to/Bloggers/UsingADifferentPersistenceProviderWithAS701#H-ExperimentalUseOfOGMOnAS701. >>>>>>>> >>>>>>>> - How to add the OGM module to AS >>>>>>>> - Changing existing AS module dependencies for OGM >>>>>>>> - Infinispan Configuration changes for OGM >>>>>>>> - Example >>>>>>> >>>>>>> >>>>>>> >>>>>>> That would be great, are you creating a patch for the docbook in OGM? >>>>>> >>>>>> >>>>>> >>>>>> I created a git branch locally but haven't started the actual doc changes >>>>>> yet. >>>>>> >>>>>> Scott >>>>>> >>>>>>> >>>>>>> Sanne >>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On 09/27/2012 11:13 AM, Emmanuel Bernard wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> I'd still prefer a small section in our reference documentation. >>>>>>>>> Stuff in the wiki is as useful as peeing in a violin as we say in >>>>>>>>> France ;) >>>>>>>>> >>>>>>>>> Emmanuel >>>>>>>>> >>>>>>>>> On Thu 2012-09-27 9:52, Scott Marlow wrote: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On 09/27/2012 09:02 AM, Emmanuel Bernard wrote: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Hey Scott, >>>>>>>>>>> >>>>>>>>>>> I stumbled upon https://hibernate.onjira.com/browse/OGM-117 and >>>>>>>>>>> wondered >>>>>>>>>>> if you could contribute a paragraph or two on how to use Hibernate >>>>>>>>>>> OGM >>>>>>>>>>> in JBoss AS latest. >>>>>>>>>>> The documentation is hosted in >>>>>>>>>>> http://github.com/hibernate/hibernate-ogm, there >>>>>>>>>>> is a documentation module. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> I could do that or >>>>>>>>>> https://docs.jboss.org/author/display/AS72/JPA+Reference+Guide might >>>>>>>>>> be another place for the "how to use Hibernate OGM with AS" >>>>>>>>>> documentation. This link is likely to change like the wind but the >>>>>>>>>> content will be available. >>>>>>>>>> >>>>>>>>>> I'm not sure that either location is better, but I do like using >>>>>>>>>> confluence as users can more easily fix the mistakes. ;) >>>>>>>>>> >>>>>>>>>> Do you have a preference? >>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> If you can make it by end of week or Monday, you gain extra karma >>>>>>>>>>> points. >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Extra karma points are always good to have! :) >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> hibernate-dev mailing list >>>>>>>> hibernate-dev@lists.jboss.org >>>>>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev >>>>>> >>>>>> >>>>>> >>>> > _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev