This page details the locations and purposes of the Fedora 4 configuration files.
For details on how to enable and configure these options, see this page.
The following spring files exist in a directory as configured by fcrepo4/fcrepo-webapp/src/main/webapp/WEB-INF/web.xml. This web.xml file contains a context-param element with param-name "contextConfigLocation". The param-value points to your spring configuration directory, usually a path like WEB-INF/classes/*.xml. Note that the files is src/main resources/spring are copied upon build to WEB-INF/classes.
<bean name "modeshapeRepofactory" class= "org.fcrepo.kernel.spring.ModeshapeRepositoryFactoryBean"> <property name="repositoryConfiguration" value="${fcrepo.modeshape.configuration:classpath:/config/single/repository.json"/> </bean> |
Fedora 4 uses Modeshape, a JCR implementation. We distribute a handful of known-good configurations for Modeshape and Infinispan, although we anticipate configuration tuning for deployment environments will be common.
http://docs.jboss.org/infinispan/5.3/configdocs/
/config/minimal-default/repository.json
Default configuration without authentication
/config/servlet-auth/repository.json
Default configuration with servlet authentication
/config/clustered/repository.json
Default configuration with repository clustering enabled. Uses /config/infinispan/clustered/infinispan.xml.
/config/infinispan/leveldb-default/infinispan.xml
Default configuration with leveldb object storage
/config/infinispan/leveldb/infinispan.xml
Configuration with leveldb object storage and filecachestore object storage
/config/infinispan/clustered/infinispan.xml
Example clustering configuration. Replicates object storage, distributes 2 copies of binary storage.
/config/infinispan/file/infinispan.xml
Configuration with filecachestore
/config/infinispam/ram/infinispan.xml
In-memory configuration for object storage (useful for testing)
Options:
fcrepo.modeshape.query.enabled:true
fcrepo.infinispan.cache_configuration:config/infinispan/leveldb-default/infinispan.xml
fcrepo.modeshape.query.mode:sync
fcrepo.binary-store-path:target/binaries
fcrepo.modeshape.index.location:target/indexes
fcrepo.ispn.repo.CacheDirPath:target/FedoraRepository/storage - path to store object properties
fcrepo.ispn.binary.CacheDirPath:target/FedoraRepositoryBinaryData/storage - path to store binary content (when it's stored in infinispan)
Tuning considerations:
fcrepo.modeshape.query.mode = async
fcrepo.modeshape.query.enabled = false
Defining .cnd files such as these in repository.json will register namespaces and nodetypes found within:
Alternatively from definition in .cnd files as above, forms are available to add namespaces and nodetypes at these URL endpoints:
http://<host>/rest/fcr:namespaces
http://<host>/rest/fcr:nodetypes