Commits on Dec 6, 2012
Commits on Dec 4, 2012
  1. HSEARCH-1240 Fix a regression in the mass indexer introduced by fixin…

    gsmet committed with Sanne Dec 3, 2012
    …g HSEARCH-1201: we still need to return the initialized object if the proxy was created in the current session
Commits on Oct 8, 2012
  1. HSEARCH-1201 Make sure the LoadingInitializer can deal with proxies c…

    Sanne committed Oct 5, 2012
    …reated by a different Session
  2. HSEARCH-1201 - Initialize proxy before sending it in the fieldbridge …

    Stéphane Gleizes committed with Sanne Oct 5, 2012
  3. HSEARCH-1201 - Initialize proxy before sending it in the fieldbridge …

    Stéphane Gleizes committed with Sanne Oct 5, 2012
Commits on May 9, 2012
  1. HSEARCH-1115 ClassLoaderHelper#classForName takes now the classloader…

    hferentschik committed with Sanne May 8, 2012
    … as second parameter instead of the caller class
    Re-added the explicit passing of the caller's classloader to ConfigContext and DocumentBuilderHelper
  2. HSEARCH-1115 Doing all class loading via ClassLoaderHelper. Also doin…

    hferentschik committed with Sanne May 8, 2012
    …g moving the classForName methods from commons annotations into ClassLoaderHelper.
  3. HSEARCH-1115 Make sure to load Hibernate / JPA exceptions with the "b…

    emmanuelbernard committed with Sanne May 7, 2012
    …est" classloader
    commons-annotations is not the correct classloader in a modular environment
  4. HSEARCH-1115 Avoid reflection when we have the data and pass the righ…

    emmanuelbernard committed with Sanne May 7, 2012
    …t caller for modular environments
    Since ReflectHelper is in Commons Annotations which depends on nothing, it's critical
    to provider the right caller
  5. HSEARCH-1115 Changed use of ReflectHelper to specify classloader

    rhauch committed with Sanne May 5, 2012
    Two uses of ReflectHelper.classForName(String) were changed to use the
    classForName(String,Class) form instead. In the latter method, if
    the class cannot be found on the thread's context class loader then the
    class will be loaded using the classloader of the class specified in
    the second parameter.
    In one of the cases (DocumentBuilderHelper), the DocumentBuilderHelper class
    was passed, meaning that the same classloader used to load the Hibernate Search
    classes will be used.
    In the second case (ConfigContext), the second parameter is the class of
    the SearchConfiguration implementation that was supplied to the ConfigContext.
    This is better than the ConfigContext class, since the SearchConfiguration
    implementation will be provided by the components using the SearchFactoryBuilder
    to build a SearchFactory. This means that the components' classloader
    will be used to load the Analyzer implementation class.
    There are a few other uses of ReflectionHelper.classForName(String) in the Hibernate
    Search codebase, but I don't think they require the same classloading logic.
    When used in a Java SE environment, there is no net difference in classloading
    behavior. However, in JBoss AS7 (or even OSGi) the different classloaders have
    a significant effect. Specifically, when used in JBoss AS7, the modules might look
    like this (where "-->" signifies 'depends on'):
  (uses Hibernate Search, implements SearchConfiguration)
           --> org.hibernate (specifically the hibernate-commons-annotations JAR)
           --> org.apache.lucene
           --> others
    In this case, the result of the code before this change is that ConfigContext
    would expect to find the Analyzer implementation using the 'org.hibernate'
    module (where the ReflectHelper class exists), which does cannot see any of
    the 'org.apache.lucene' Analyzer implementations nor any implementations
    provided by ''. After this change, ConfigContext uses '' classloader
    (since that's where the SearchConfiguration class exists), and thus can see
    any Analyzer implementation provide in '', '',
    'org.apache.lucene', 'org.hibernate' (if there were any), or any of the other
    All unit tests run by the build pass successfully with these changes.
Commits on May 7, 2012
  1. HSEARCH-1118 Making sure that is used i…

    hferentschik committed with emmanuelbernard May 7, 2012
    …nstead of just worker.scope
Commits on May 4, 2012
  1. add missing copyright headers

    Sanne committed Apr 26, 2012
  2. HSEARCH-1088 Specifying an analyzer on an entity class bridge using t…

    Sanne committed Apr 24, 2012
    …he programmatic API is broken