Warning |
---|
These training archives may be out of date, but have been retained and kept available for the community's benefit in reviewing previous sessions. Current training documentation can be found here: Training |
Table of Contents |
---|
Learning Outcomes
- Deploying Fedora
- Explore core and external features
- Gain insight into content modeling
- Set up a federation over a local filesystem
- Set up JMS message consumer
- Set up external triplestore
Prerequisites
- Java7 installed
- WAR file(s) downloaded
- Configuration files downloaded
- Tomcat installed (optional)
Downloads
War files
Required
- One click run of Fedora 4: fcrepo-webapp-4.1.0-jetty-console.war
- One click run of external message consumer: fcrepo-message-consumer-webapp-4.1.0-jetty-console.war
Optional
- fcrepo-webapp-4.1.0-auth (optional, only needed if deploying to Tomcat with authorization)
- fcrepo-message-consumer-webapp-4.1.0.war (optional, only needed if deploying to Tomcat)
- fcrepo-webapp-4.1.0.war (optional, only needed if deploying to Tomcat)
Configuration files
- repository.json
- repository-federation.json
- fedora-node-types-training.cnd
- fedora-node-types-indexing.cnd
Triplestore
Deploying Fedora4
In OSX or Windows you can simply double-click the fcrepo-webapp-4.1.0-auth.war file to launch the Fedora 4 console. Then click Start and wait for the application to load in your browser.
You can also run the application from the command line using the following command:
Code Block |
---|
java -jar fcrepo-webapp-4.1.0-jetty-console.war --headless |
Note: The location where Fedora writes to disk can be specified with the following flag:
Code Block |
---|
java -Dfcrepo.home=/path/fedora/data -jar fcrepo-webapp-4.1.0-jetty-console.war --headless |
Using Admin Features
Transactions (docs)
Versioning (docs)
Create a version with a label
Code Block |
---|
curl -XPOST http://localhost:8080/rest/item/fcr:versions/my-label |
Import/Export (docs)
Federation aka Projection (docs)
- Modify repository-federation.json for local system ("externalSources:federated-directory:directoryPath")
Code Block |
---|
java -Dfcrepo.modeshape.configuration=file:/path/to/repository-federation.json -jar fcrepo-webapp-4.1.0-jetty-console.war --headless |
Content Modeling
- Modify repository-federation.json to point to fedora-node-types-training.cnd
Code Block |
---|
"node-types" : ["/path/to/fedora-node-types-training.cnd"] |
- Run:
Code Block |
---|
java -Dfcrepo.modeshape.configuration=file:/path/to/repository-federation.json -jar fcrepo-webapp-4.1.0-jetty-console.war --headless |
- Examine default property created on new objects
- Examine effect of applied type
Code Block |
---|
<> a carl:page |
External Triplestore
- Setup Fuseki (docs)
Start Fuseki
Code Block ./fuseki-server --update --mem /test
- Verify running at –
http://localhost:3030
Modify repository-federation.json to point to fedora-node-types-indexing.cnd
Code Block "node-types" : ["/path/to/fedora-node-types-indexing.cnd"]
Start Fedora
Code Block java -Dfcrepo.modeshape.configuration=file:/path/to/repository-federation.json -jar fcrepo-webapp-4.1.0-jetty-console.war --headless
Start fcrepo-message-consumer
Code Block java -jar fcrepo-message-consumer-webapp-4.1.0-jetty-console.war --headless --port 9090
Create/Update some objects and perform some queries (examples)
Additional Resources
- (PCDM)
Prerequisites
Either
- Vagrant setup:
- Download and install VirtualBox: https://www.virtualbox.org/wiki/Downloads
- Download and install Vagrant: http://www.vagrantup.com/downloads.html
- Download the Fedora 4 VM: https://github.com/fcrepo4-labs/fcrepo4-vagrant
- Note that you can either clone the repository to your desktop or just download the ZIP [2] and unzip it
- Using a Command Line Interface, navigate to the VM folder from step 3 and run the command: vagrant up
- Note that this step will take a while as the VM downloads and installs a virtual environment
- Test the VM by opening your web browser and navigating to: http://localhost:8080/fcrepo
- Or, Standalone apps setup
Explore Features
Using Google Chrome PostMan app, execute the following requests (attached)
Expand | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
SPARQL Query
In Fuseki console (localhost:3030)
- Select "Control Panel"
- Select Dataset "/test"
- Select Output "Text"
- Select "Force the accept header text/plain regardless"
Query
No Format prefix pcdm: <http://pcdm.org/models#> select ?work where { <http://localhost:8080/fcrepo/rest/collections/poe> pcdm:hasMember ?work . ?work pcdm:hasFiles ?files . } group by ?work having (count(?files) > 1)
Using Admin Features
Transactions (docs)
Versioning (docs)
Create a version with a label
Code Block |
---|
curl -XPOST http://localhost:8080/rest/item/fcr:versions/my-label |
Import/Export (docs)
Additional Resources
...
- Fedora 3 Object representation in Fedora 4
- How to Migrate a Fedora 3 Content Model to a Fedora 4 Node Type
...