Page History
...
You can either use a Handle server running on the same machine as DSpace, or you can install it on a separate machine. Installing it on the same machine is a little bit easier. If you install it on a separate machine, you can use one Handle server for more than one DSpace installation.
Table of Contents |
---|
To install your Handle resolver on the host where DSpace runs
Note |
---|
We recommend configuring your Handle server without a passphrase, as the current DSpace If you choose to set a passphrase, you may need to start the Handle Server via: |
...
Note that since the DSpace code manages individual Handles, administrative operations such as Handle creation and modification aren't supported by DSpace's Handle server.
To install a Handle resolver on a separate machine
Warning | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
The option to run the Handle resolver on a separate machine is not yet available in DSpace 7 codebase. See this ticket:
|
Info |
---|
This works with DSpace 7.4 and later. |
The Handle server you use must be dedicated to resolve Handles from DSpace. You cannot use a Handle server that is in use with other software already. You can use CNRI's Handle Software -- all you have to do is to add to it a plugin that is provided by DSpace. The following instructions were tested with CNRI's Handle software version 9.1.0. You can do the following steps on another machine than the machine DSpace runs on, but you have to copy some files from the machine on which DSpace is installed.
Set the following two configuration properties for every DSpace backend that your are running:
Code Block title DSpace backend configuration to activate the endpoints used by the remote handle resolver handle.remote-resolver.enabled = true handle.hide.listhandles = false
- Download the CNRI Handle Software: http:s//www.handle.net/download.html. In the tarball you'll find an
README.txt
with installation instructions -- follow it. - After installing the CNRI Handle Software you should have two directories: once that contains the CNRI software and one that contains the configuration of you local Handle Server. For the rest of this instruction we assume that the directory containing the CNRI Software is
/hs/
handle-9.1.0 and the directory containing the configuration of your local server is/hs/srv_1
. (We use the same paths here as CNRIs README.txt.) - Download the plugin from https://github.com/DSpace/Remote-Handle-Resolver/releases. Select a release. You can get the source and build it yourself, or just use the JAR file included in the release. In either case, once you have a
dspace-remote-handle-resolver-VERSION.jar
, copy it to the directory containing the CNRI software (/hs/handle-9.1.0/lib
). - Create the directory
/hs/srv_1/logs
. Create the following two files in
/hs/srv_1
.Code Block title log4j-handle-plugin.properties log4j.rootCategory=INFO, A1 log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender log4j.appender.A1.File=/hs/srv_1/logs/handle-plugin.log log4j.appender.A1.DatePattern= '.' yyyy-MM-dd log4j.appender.A1.layout=org.apache.log4j.PatternLayout log4j.appender.A1.layout.ConversionPattern=%d %-5p %c @ %m%n log4j.logger.org.apache.axis.handlers.http.HTTPAuthHandler=INFO
Change the path in the third line, if necessary. It must point to the DSpace 7 Rest API (as configured in $dspace.server.url).
Code Block title handle-dspace-plugin.cfg dspace.handle.endpoint1 = http: //dspace.example.org/dspace/handleresolverserver
If you run more than one DSpace Installation, you may add more DSpace Endpoints. Just increase the number at the end of the key for each:
endpoint2
,endpoint3
....Edit
the
file/hs/srv_1/config.dct
to include the following lines in the "server_config"
clause:Code Block "storage_type" = "CUSTOM" "storage_class" = "org.dspace.handle.MultiRemoteDSpaceRepositoryHandlePlugin"
- Edit
/hs/handle-9.1.0/bin/hdl
:- Find a line that contains
exec java ... net.handle.server.Main ...
- Add "
-Dlog4j.configuration=file:///hs/srv_1/log4j-handle-plugin.properties -Ddspace.handle.plugin.configuration=/hs/srv_1/handle-dspace-plugin.cfg
" right in front ofnet.handle.server.Main
.
- Find a line that contains
- If your handle server is running, restart it.
Please note: The Handle Server will only start if it is able to connect to at least one running DSpace Installation. It only resolves the handles of the DSpace Installations that were running when it was started.
To install a Handle resolver on a separate machine using template handles
Instead of using the described plugin above, you can configure a Handle server (version 8+) to resolve handles based on a template. Template handle require less configuration than the plugin, and do not require an additional download. However, there are two things to keep in mind when using template handles:
...
This configuration is a minimal example of how to configure template handles for DSpace. For more details about configuring template handles, see the Handle Technical Manual, Chapter 11 (PDF download).
Updating Existing Handle Prefixes
If you need to update the handle prefix on items created before the CNRI registration process you can run the [dspace]/bin/dspace update-handle-prefix script. You may need to do this if you loaded items prior to CNRI registration (e.g. setting up a demonstration system prior to migrating it to production). The script takes the current and new prefix as parameters. For example:
...