Date: Fri, 29 Mar 2024 04:21:49 -0400 (EDT) Message-ID: <1285572464.30074.1711700509094@lyrasis1-roc-mp1> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_30073_451442585.1711700509093" ------=_Part_30073_451442585.1711700509093 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
A powerful feature of fedora 4 is projection or federation, in which lar= ge swaths of data from external sources can be treated and exposed as repos= itory content
To easily test this feature during the install fest, we've built a sampl= e war file that exposes a federation over the home directory of the user ac= count under which the application is running.
Currently the configuration (which specifies which files to expose at wh= at path) can only easily be edited before the application is compiled. = ; The following instructions explain the process of configuring, building= p>
Requires Git, Maven 3, Java 7.
Get the source code:
git clo= ne https://github.com/futures/fcrepo4.git
Update the repository configuration (fcrepo4/fcrepo-http-commons/t=
arget/classes/config/rest-sessions/repository.json
) to include the f=
ollowing lines after the node-types definition (add a comma):
"extern= alSources" : { "home-directory" : { "classname" : "org.modeshape.connector.filesystem.FileSystemConnect= or", "directoryPath" : "${user.home}", "projections" : [ "default:/home =3D> /" ], "readOnly" : true, "addMimeTypeMixin" : true } }
directoryPath
parameter specifies the base directory o=
f the filesystem that is accessible to fedora.projections
parameter creates one or more mappings fro=
m a repository path to a filesystem path (relative to the base directory sp=
ecified in directoryPath
).Install the fcrepo-jcr artifacts to your local maven repository:
cd fcre= po4/fcrepo-jcr mvn clean install
Run the web application in jetty:
cd fcre= po/fcrepo-webapp mvn clean jetty:run
Browse your home directory through fedora at http://local= host:8080/rest/home