Member Menu
 
 Monthly JBoss newsletter:
 
Hibernate Books
CaveatEmptor

How to implement XML mapping for Hibernate Search

Several people requested support for XML mapping (rather than annotations)

in Hibernate Search. Some people even offered to contribute it (not contributed back to far).

Here are some guidelines to implement this feature.

Infrastructure

The code infrastructure is already available. Just like Hibernate Annotations, Hibernate Search uses Hibernate Commons Annotations to abstract the annotation reading process from the physical annotations. this is how Hibernate Annotations supports the JPA deployment descriptor.

Hibernate Commons Annotations read the XML mapping files and generate the corresponding annotations.

In Hibernate Annotations, all the logic is held in org.hibernate.cfg.annotations.reflection and specifically in these three classes

  • EJB3ReflectionManager : delegates the work to EJB3OverridenAnnotationReader and XMLContext
  • XMLContext : keep track of global default settings
  • EJB3OverridenAnnotationReader : parse the XML file and convert it into annotations

To implement XML support for Hibernate Search, the steps are:

  • define the XML structure: it can be started from scratch or reuse the hbm.xml <meta/> element
  • implement a SearchOverridenAnnotationReader
  • implement a SearchReflectionManager

Contribution

Describe your progress here

© Copyright 2006, Red Hat Middleware, LLC. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc. [Privacy Policy]