use Hibernate Search (brings advanced full-text and geospatial queries)