Div |
---|
style | float:right |
---|
class | noprint |
---|
|
Panel |
---|
|
|
Overview of Dependencies
Most Islandora Solution Packs and some modules will require that you have one or more of the following dependencies installed so that Islandora Content Models can perform prescribed actions on your data objects. Review Chapter 5 - Islandora Solution Packs to see what dependencies are required for the solution packs you wish to install.
...
If you wish to use an iframe with the Islandora Viewer you must configure Apache with a reverse proxy. Note: These instructions are for configurations with Fedora running on the same server as Drupal.
Configuration Steps:1.
Add the following to Apache's httpd.conf file or desired virtual host, if using Apache virtual hosts:
Code Block |
---|
|
ProxyRequests Off
ProxyPreserveHost On
<Proxy \*>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /fedora/get http://localhost:8080/fedora/get
ProxyPassReverse /fedora/get http://localhost:8080/fedora/get
ProxyPass /fedora/services http://localhost:8080/fedora/services
ProxyPassReverse /fedora/services http://localhost:8080/fedora/services
ProxyPass /fedora/describe http://localhost:8080/fedora/describe
ProxyPassReverse /fedora/describe http://localhost:8080/fedora/describe
ProxyPass /iiv http://localhost:8080/iiv
ProxyPassReverse /iiv http://localhost:8080/iiv
ProxyPass /fedora/risearch http://localhost:8080/fedora/risearch
ProxyPassReverse /fedora/risearch http://localhost:8080/fedora/risearch
ProxyPass /adore-djatoka http://localhost:8080/adore-djatoka
ProxyPassReverse /adore-djatoka http://localhost:8080/adore-djatoka
|
...
- Test your configuration by navigating to http://localhost/fedora/risearch to view the Fedora resource index page.
Djatoka
Djatoka is a Java-based open source image server that provides compression and region extraction of JPEG 2000 images, URI-addressability of regions, and support for a rich set of input/output image formats (e.g., BMP, GIF, JPG, PNG, PNM, TIF, JPEG 2000).
Installation Steps:1.
- Download and install Djatoka on your Fedora server by following the installation instructions at: http://sourceforge.net/apps/mediawiki/djatoka/index.php?title=Installation.
...
For this example, we have installed Djatoka in /opt/adore-djatoka-1.1. Once Djatoka has been verified and installed, you will need to change the environment variables in the $CATALINA_HOME/bin/startup.sh script. At the very end of the file, insert the following:
Code Block |
---|
. /opt/adore-djatoka-1.1/bin/env.sh
export JAVA_OPTS
echo $JAVA_OPTS
exec "$PRGDIR"/"$EXECUTABLE" start "$@" |
...
- Then, modify the env.sh file found in /opt/adore-djatoka-1.1/bin/
a) At the top of the file:
Change this: | To this: |
#!/bin/sh # setup environment variables for shell script
# Define DJATOKA_HOME dynamically LAUNCHDIR=$PWD cd ..
DJATOKA_HOME=`pwd` LIBPATH=$DJATOKA_HOME/lib | #!/bin/sh # setup environment variables for shell script CURRENTDIR=$PWD # Define DJATOKA_HOME dynamically LAUNCHDIR=/opt/adore-djatoka-1.1/bin #cd ..
DJATOKA_HOME=/opt/adore-djatoka-1.1 LIBPATH=$DJATOKA_HOME/lib |
b) Then, at the bottom of the file:
Change this: | To this: |
KAKADU_HOME=$DJATOKA_HOME/bin/$PLATFORM export KAKADU_HOME cd $LAUNCHDIR
for line in `ls -1 $LIBPATH | grep '.jar'` do classpath="$classpath:$LIBPATH/$line" done
#DEBUG="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n" CLASSPATH=.:../build/:$classpath JAVA_OPTS="$DEBUG -Djava.awt.headless=true -Xmx512M -Xms64M -Dkakadu.home=$KAKADU_HOME -Djava.library.path=$LIBPATH/$PLATFORM $KAKADU_LIBRARY_PATH" | KAKADU_HOME=$DJATOKA_HOME/bin/$PLATFORM #cd $LAUNCHDIR
#for line in `ls -1 $LIBPATH | grep '.jar'` # do # classpath="$classpath:$LIBPATH/$line" #done #go back to tomcat dir #cd $CURRENTDIR
#DEBUG="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n" #CLASSPATH=.:../build/:$classpath JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true -Dkakadu.home=$KAKADU_HOME -Djava.library.path=$LIBPATH/$PLATFORM $KAKADU_LIBRARY_PATH" |
...
- Restart Fedora and test the Djatoka application by going to: http://\[fedora-server\]:8080/adore-djatoka
To test your installation, click the 'Update Image' button. If you do not see part of an image from the Library of Congress there is a problem with your Djatoka installation. Go back and review the installation instructions to make sure that they were followed correctly.
Info |
---|
Though not required, it is a good idea to set the path for Djatoka log files. You can do this by adding a line to the log4j.properties file. For example: log.dir=/usr/local/fedora/server/logs/ |
Accommodating Viewing Restrictions for Djatoka
The Djatoka image viewer must send authentication credentials to Fedora in order to get titles back. For most set-ups, this communication between Djatoka and Fedora will be direct. However, if you wish to put Djatoka behind an authentication wall to restrict the view of objects to certain users in Fedora, you will need to make some additional configurations.
The islandora-servlet-filter.jar, which is part of the earlier Drupal Server Filter download, is required to facilitate this communication. The islandora-servlet-filter.jar should resides in $CATALINA_HOME/webapps/fedora/WEB-INF/lib
Installation Steps:1.
Make the following change to the web.xml located in $CATALINA_HOME/webapps/fedora/WEB-INF/
Code Block |
---|
<filter>
<filter-name>DrupalFilter</filter-name>
<filter-class>ca.upei.roblib.fedora.servletfilter.FilterDrupal</filter-class>
</filter>
<filter>
<filter-name>IslandoraAuthFilter</filter-name>
<filter-class>ca.upei.roblib.fedora.servletfilter.FilterIslandoraAuth</filter-class>
</filter>
<filter>
<filter-name>RestApiAuthnFilter</filter-name>
<filter-class>fedora.server.security.servletfilters.FilterRestApiAuthn</filter-class>
</filter>
...
<filter-mapping>
<filter-name>DrupalFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>IslandoraAuthFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>EnforceAuthnFilter</filter-name>
<servlet-name>AxisServlet</servlet-name>
</filter-mapping> |
...
Then, modify the $FEDORA_HOME/server/config/filter-drupal.xml file by adding the following the bottom of the file, just before
</FilterDrupal_Connection>
Code Block |
---|
<service_requests>
<service name="djatoka">
<\!-\- space-separated list of allowed ips. use 'local' to allow requests from same ip as fedora \-->
<allowed_ips>local</allowed_ips>
<\!-\- request uri must match this regex to be eligible for service access \-->
<allowed_uri_pattern>^.*/(JP2\|TEI)$</allowed_uri_pattern>
<\!-\- <allowed_uri_pattern>^.*$</allowed_uri_pattern> \-->
<\!-\- space-separated list of roles granted to service requests \-->
<roles>administrator fedora_anonymous</roles>
</service>
</service_requests> |
...
- Restart Fedora to apply the changes.
...
- To test the filter, access a Fedora with large image objects that have restricted security policies.
ExifTool
ExifTool is a platform-independent Perl library plus a command-line application for reading, writing and editing metadata in a wide variety of formats. ExifTool is used by the Audio Solution Pack to read and write metadata for audio files. Islandora currently uses ExifTool version 3.5.
...