The Solr module (full name Magnolia Solr Search Provider Module) allows you to use Apache Solr, a standalone enterprise-grade search server with a REST-like API, for indexing and crawling Magnolia content, especially if you need to manage assets in high volumes (100,000+ DAM assets).

For a brief overview of Solr's main features see the Solr search page. For module compatibility with Apache Solr and module release notes see the Solr module release notes page.

Module structure

The module (parent) consists of five submodules. The first two – Content Indexer and Solr Search Provider – are required for correct functioning of the Solr search feature. 



Parent reactor.


Indexes Magnolia workspaces. It can also crawl a published website.


Provides templates for displaying Solr search results on a site and faceted search components.


Provides a Solr container for list, search and thumbnail views in content apps.


A bundle containing the Content Indexer, Search Provider and Solr Workbench modules, together with third-party libraries and sample Solr configuration files managed-schema and solrconfig.xml.


For the removal of the old, pre-2.0 version of the Content Indexer module and Solr module configuration.

Version 2.0 of the Solr module didn't support migration from the older version. The older version had to be uninstalled first.


Maven is the easiest way to install the modules. Add the following dependencies to your webapp:

Magnolia Core Compatibility module (artifact ID: magnolia-core-compatibility) is required, if you intend to use the Solr module in a version below 5.2.3. In this version, released with Magnolia 6.1.6, we removed dependencies on the old Content API.




Pre-built JARs are also available for download. See Installing a module for help.

If you install with JAR files, include the dependent third-party libraries.

Solr Search Provider bundle

The Content Indexer, Search Provider and Solr Workbench submodules are available in a bundle which also contains a sample configuration set and some third-party libraries such as crawler4j or SolrJ:


For the installation information about Apache Solr server and for further configuration details see the following pages:

#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))