Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note
titlebuild.properties file is only used with building/compiling DSpace

It is worth noting that the [dspace-source]/build.properties file (or custom properties file) is ONLY used in the act of building/installing/upgrading DSpace. During that build/install/upgrade process, any settings in your "setting currently available in the build.properties will be inherited (copied) to the dspace.cfg file. However, if you need to add new settings to your build.properties" file (or custom properties file) are automatically copied over to the "dspace.cfg" file. file, you will need to modify your dspace.cfg file in order for it to be inherited (see the note below titled "You may add new settings to your build.properties or custom *.properties").

Once DSpace is installed, it the system only uses the settings in your [dspace]/config/dspace.cfg file.  So, the build.properties file will not be copied into your installation directory, and all runtime configurations are pulled from the final dspace.cfg file.

Warning
titleDo not remove or comment out settings in build.properties

When you edit the "build.properties" file (or a custom *.properties file), take care not to remove or comment out any settings.  Doing so, may cause your final "dspace.cfg" file to be misconfigured with regards to that particular setting.  Instead, if you wish to remove/disable a particular setting, just clear out its value.  For example, if you don't want to be notified of new user registrations, ensure the "mail.registration.notify" setting has no value, e.g.

mail.registration.notify=

The dspace.cfg Configuration Properties File

The dspace.cfg contains basic information about a DSpace installation, including system path information, network host information, and other like items.  It is the primary configuration file for DSpace, used by DSpace when it is actively running.

In ordinary use, this file is assumed to be [dspace]/config/dspace.cfg.  If you define a system property -Ddspace.configuration=/some/path/to/a/file then that file will be used instead.

Main DSpace Configurations

Property:

dspace.dir

Example Value:

/dspace

Informational Note:

Root directory of DSpace installation. Omit the trailing slash '/'. Note that if you change this, there are several other parameters you will probably want to change to match, e.g. assetstore.dir .

(On Windows be sure to use forward slashes for the directory path!  For example: "C:/dspace" is a valid path for Windows.)

Property:

dspace.hostname

Example Value:

dspace.hostname = dspace.mysu.edu

Informational Note:

Fully qualified hostname; do not include port number.

Property:

dspace.baseUrl

Example Value:

http://dspacetest.myu.edu:8080

Informational Note:

Main URL at which DSpace Web UI webapp is deployed. Include any port number, but do not include the trailing '/'.

Property:

dspace.url

Example Value:

dspace.url = ${dspace.baseUrl}/jspui

Informational note

DSpace base URL. URL that determines whether JSPUI or XMLUI will be loaded by default. Include port number etc., but NOT trailing slash. Change to /xmlui if you wish to use the xmlui (Manakin) as the default, or remove "/jspui" and set webapp of your choice as the "ROOT" webapp in the servlet engine.

Property:

dspace.oai.url

Example Value:

dspace.oai.url = ${dspace.baseUrl}/oai

Informational note:

The base URL of the OAI webapp (do not include /request).

Property:

dspace.name

Example Value:

dspace.name = DSpace at My University

Informational Note:

Short and sweet site name, used throughout Web UI, e-mails and elsewhere (such as OAI protocol)

DSpace Database Configuration

Many of the database configurations are software-dependent. That is, it will be based on the choice of database software being used. Currently, DSpace properly supports PostgreSQL and Oracle.

Property:

db.name

Example Value:

db.name = postgres

Informational Note:

Both postgres or oracle are accepted parameters.

Property:

db.url

Example Value:

db.url = jdbc:postgresql://localhost:5432/dspace_-services

Informational Note:

The above value is the default value when configuring with PostgreSQL. When using Oracle, use this value: jbdc.oracle.thin:@//host:port/dspace

Property:

db.username

Example Value:

db.username = dspace

Informational Note:

In the installation directions, the administrator is instructed to create the user "dspace" who will own the database "dspace".

Property:

db.password

Example Value:

db.password = dspace5

Informational Note:

This is the password that was prompted during the installation process (cf. 3.2.3. Installation)

Property:

db.schema

Example Value:

db.schema = vra

Informational Note:

If your database contains multiple schemas, you can avoid problems with retrieving the definitions of duplicate objects by specifying the schema name here that is used for DSpace by uncommenting the entry. This property is optional.

Property:

db.maxconnections

Example Value:

db.maxconnections = 30

Informational Note:

Maximum number of Database connections in the connection pool

Property:

db.maxwait

Example Value:

db.maxwait = 5000

Informational Note:

Maximum time to wait before giving up if all connections in pool are busy (in milliseconds).

Property:

db.maxidle

Example Value:

db.maxidle = -1

Informational Note:

Maximum number of idle connections in pool. (-1 = unlimited)

Property:

db.statementpool

Example Value:

db.statementpool = true

Informational Note:

Determines if prepared statement should be cached. (Default is set to true)

Property:

db.poolname

Example Value:

db.poolname = dspacepool

Informational Note:

Specify a name for the connection pool. This is useful if you have multiple applications sharing Tomcat's database connection pool. If nothing is specified, it will default to 'dspacepool'

Property:db.jndi
Example Value:db.jndi = jdbc/dspace
Informational Note:Specify the name of a configured connection pool to be fetched from a directory using JNDI.  If this property is not configured or no such pool can be retrieved, then DSpace will fall back to creating its own pool using the other db.* properties.  db.name must still be specified.

DSpace Email Settings

The configuration of email is simple and provides a mechanism to alert the person(s) responsible for different features of the DSpace software.

DSpace will look up a javax.mail.Session object in JNDI and, if found, will use that to send email.  Otherwise it will create a Session using some of the properties detailed below.

Info
titleYou may add new settings to your build.properties or custom *.properties

Based on your institution's needs, you may wish to add settings to your own build.properties (or custom *.properties) file. This is actually a relatively easy process.

Any existing DSpace configuration (any config in dspace.cfg or in any configuration file under [dspace-src]/dspace/config/modules/*.cfg) can be "moved" into your local build.properties file via the following process:

  1. First, copy the existing configuration from the *.cfg file into your local build.properties file.  You can actually choose to rename this configuration in build.properties, if it makes more sense. Essentially, the name of the new configuration in build.properties is entirely up to you.
    1. For example, if you want to copy the LDAP "provider_url" from [dspace-src]/dspace/config/modules/authentication-ldap.cfg to your build.properties, you may wish to rename it to "ldap.provider_url" within build.properties
    2. You can also choose to keep the name of the configuration the same in build.properties. For example, if you wish to move the "xmlui.google.analytics.key" (from dspace.cfg) to your build.properties, you could keep the name the same.
  2. Second, you will need to modify the corresponding configuration file (the config file you copied the setting from) so that it now references your newly added build.properties setting. This is achieved by using the "${setting-in-build.properties}" placeholder.
    1. For example, to reference a new "ldap.provider_url" setting in build.properties (mentioned in 1.a above) , just modify the [dspace-src]/dspace/config/modules/authentication-ldap.cfg file to have a line that says provider_url=${ldap.provider_url} (The first part is the name of the actual config in authentication-ldap.cfg, and the second part is the name of the config in build.properties)
    2. Another example: To reference a new "xmlui.google.analytics.key" setting in build.properties (mentioned in 1.b above), just modify the [dspace-src]/dspace/config/dspace.cfg file to have a line that says xmlui.google.analytics.key=${xmlui.google.analytics.key}  (The first part is the name of the actual config in dspace.cfg, and the second part is the name of the config in build.properties)
  3. Finally, rebuild DSpace (using Maven), and redeploy (using Ant).  The new settings in your build.properties file will automatically be copied into your configuration file during the rebuild process.

 

The dspace.cfg Configuration Properties File

The dspace.cfg contains basic information about a DSpace installation, including system path information, network host information, and other like items.  It is the primary configuration file for DSpace, used by DSpace when it is actively running.

In ordinary use, this file is assumed to be [dspace]/config/dspace.cfg.  If you define a system property -Ddspace.configuration=/some/path/to/a/file then that file will be used instead.

Main DSpace Configurations

Property:

dspace.dir

Example Value:

/dspace

Informational Note:

Root directory of DSpace installation. Omit the trailing slash '/'. Note that if you change this, there are several other parameters you will probably want to change to match, e.g. assetstore.dir .

(On Windows be sure to use forward slashes for the directory path!  For example: "C:/dspace" is a valid path for Windows.)

Property:

dspace.hostname

Example Value:

dspace.hostname = dspace.mysu.edu

Informational Note:

Fully qualified hostname; do not include port number.

Property:

dspace.baseUrl

Example Value:

http://dspacetest.myu.edu:8080

Informational Note:

Main URL at which DSpace Web UI webapp is deployed. Include any port number, but do not include the trailing '/'.

Property:

dspace.url

Example Value:

dspace.url = ${dspace.baseUrl}/jspui

Informational note

DSpace base URL. URL that determines whether JSPUI or XMLUI will be loaded by default. Include port number etc., but NOT trailing slash. Change to /xmlui if you wish to use the xmlui (Manakin) as the default, or remove "/jspui" and set webapp of your choice as the "ROOT" webapp in the servlet engine.

Property:

dspace.oai.url

Example Value:

dspace.oai.url = ${dspace.baseUrl}/oai

Informational note:

The base URL of the OAI webapp (do not include /request).

Property:

dspace.name

Example Value:

dspace.name = DSpace at My University

Informational Note:

Short and sweet site name, used throughout Web UI, e-mails and elsewhere (such as OAI protocol)

DSpace Database Configuration

Many of the database configurations are software-dependent. That is, it will be based on the choice of database software being used. Currently, DSpace properly supports PostgreSQL and Oracle.

Property:

db.name

Example Value:

db.name = postgres

Informational Note:

Both postgres or oracle are accepted parameters.

Property:

db.url

Example Value:

db.url = jdbc:postgresql://localhost:5432/dspace_-services

Informational Note:

The above value is the default value when configuring with PostgreSQL. When using Oracle, use this value: jbdc.oracle.thin:@//host:port/dspace

Property:

db.username

Example Value:

db.username = dspace

Informational Note:

In the installation directions, the administrator is instructed to create the user "dspace" who will own the database "dspace".

Property:

db.password

Example Value:

db.password = dspace5

Informational Note:

This is the password that was prompted during the installation process (cf. 3.2.3. Installation)

Property:

db.schema

Example Value:

db.schema = vra

Informational Note:

If your database contains multiple schemas, you can avoid problems with retrieving the definitions of duplicate objects by specifying the schema name here that is used for DSpace by uncommenting the entry. This property is optional.

Property:

db.maxconnections

Example Value:

db.maxconnections = 30

Informational Note:

Maximum number of Database connections in the connection pool

Property:

db.maxwait

Example Value:

db.maxwait = 5000

Informational Note:

Maximum time to wait before giving up if all connections in pool are busy (in milliseconds).

Property:

db.maxidle

Example Value:

db.maxidle = -1

Informational Note:

Maximum number of idle connections in pool. (-1 = unlimited)

Property:

db.statementpool

Example Value:

db.statementpool = true

Informational Note:

Determines if prepared statement should be cached. (Default is set to true)

Property:

db.poolname

Example Value:

db.poolname = dspacepool

Informational Note:

Specify a name for the connection pool. This is useful if you have multiple applications sharing Tomcat's database connection pool. If nothing is specified, it will default to 'dspacepool'

Property:db.jndi
Example Value:db.jndi = jdbc/dspace
Informational Note:Specify the name of a configured connection pool to be fetched from a directory using JNDI.  If this property is not configured or no such pool can be retrieved, then DSpace will fall back to creating its own pool using the other db.* properties.  db.name must still be specified.

DSpace Email Settings

The configuration of email is simple and provides a mechanism to alert the person(s) responsible for different features of the DSpace software.

DSpace will look up a javax.mail.Session object in JNDI and, if found, will use that to send email.  Otherwise it will create a Session using some of the properties detailed below.

Property:

mail.server

Example Value:

mail.server = smtp.my.edu

Informational Note:

The address on which your outgoing SMTP email server can be reached.

Property:

mail.server.username

Example Value:

mail.server.username = myusername

Informational Note:

SMTP mail server authentication username, if required. This property is optional.

Property:

mail.server.password

Example Value:

mail.server.password = mypassword

Informational Note:

SMTP mail server authentication password, if required. This property is optional/

Property:

mail.server.port

Example Value:

mail.server.port = 25

Informational Note:

The port on which your SMTP mail server can be reached. By default, port 25 is used. Change this setting if your SMTP mailserver is running on another port

Property:

mail.server

Example Value:

mail.server = smtp.my.edu

Informational Note:

The address on which your outgoing SMTP email server can be reached.

Property:

mail.server.username

Example Value:

mail.server.username = myusername

Informational Note:

SMTP mail server authentication username, if required. This property is optional.

Property:

mail.server.password

Example Value:

mail.server.password = mypassword

Informational Note:

SMTP mail server authentication password, if required. This property is optional/

Property:

mail.server.port

Example Value:

mail.server.port = 25

Informational Note:

The port on which your SMTP mail server can be reached. By default, port 25 is used. Change this setting if your SMTP mailserver is running on another port. This property is optional.

Property:

mail.from.address

Example Value:

mail.from.address = dspace-noreply@myu.edu

Informational Note:

The "From" address for email. Change the 'myu.edu' to the site's host name.

Property:

feedback.recipient

Example Value:

feedback.recipient = dspace-help@myu.edu

Informational Note:

When a user clicks on the feedback link/feature, the information will be sent to the email address of choice. This configuration is currently limited to only one recipient. Since DSpace 4.0, this is also the email address displayed on the contacts page.

Property:

mail.admin

Example Value:

mail.admin = dspace-help@myu.edu

Informational Note:

Email address of the general site administrator (Webmaster)

Property:

alert.recipient

Example Value:

alert.recipient = john.doe@myu.edu

Informational Note:

Enter the recipient for server errors and alerts. This property is optional.

Property:

registration.notify

Example Value:

registration.notify = mike.smith@myu.edu

Informational Note:

Enter the recipient that will be notified when a new user registers on DSpace. This property is optional.

Property:

mail.charset

Example Value:

mail.charset = UTF-8

Informational Note:

Set the default mail character set. This may be over-ridden by providing a line inside the email template 'charset: <encoding>', otherwise this default is used.

Property:

mail.allowed.referrers

Example Value:

mail.allowed.referrers = localhost

Informational Note:

A comma separated list of hostnames that are allowed to refer browsers to email forms. Default behavior is to accept referrals only from dspace.hostname. This property is optional.

Property:

mail.extraproperties

Example Value:

Code Block
mail.extraproperties = mail.smtp.socketFactory.port=465, \
       mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory, \
       mail.smtp.socketFactory.fallback=false

Informational Note:

If you need to pass extra settings to the Java mail library. Comma separated, equals sign between the key and the value. This property is optional.

Property:

mail.serverfrom.disabledaddress

Example Value:

mail.serverfrom.disabled = falseaddress = dspace-noreply@myu.edu

Informational Note:

An option is added to disable the mailserver. By default, this property is set to 'false'. By setting value to 'true', DSpace will not send out emails. It will instead log the subject of the email which should have been sent. This is especially useful for development and test environments where production data is used when testing functionality. This property is optional.

The "From" address for email. Change the 'myu.edu' to the site's host name.

Property:

feedback.recipient

Property:

mail.session.name

Example Value:

mail.session.name = myDSpacefeedback.recipient = dspace-help@myu.edu

Informational Note:Specifies the name of a javax.mail.Session object stored in JNDI under java:comp/env/mail.  The default value is "Session

"When a user clicks on the feedback link/feature, the information will be sent to the email address of choice. This configuration is currently limited to only one recipient. Since DSpace 4.0, this is also the email address displayed on the contacts page.

Property:

defaultmail.languageadmin

Example Value:

defaultmail.language = en_USadmin = dspace-help@myu.edu

Informational Note:

If no other language is explicitly stated in the input-forms.xml, the default language will be attributed to the metadata values.

Wording of E-mail Messages

Sometimes DSpace automatically sends e-mail messages to users, for example, to inform them of a new work flow task, or as a subscription e-mail alert. The wording of emails can be changed by editing the relevant file in [dspace]/config/emails . Each file is commented. Be careful to keep the right number 'placeholders' (e.g.{2}).

Note: You should replace the contact-information "dspace-help@myu.edu or call us at xxx-555-xxxx" with your own contact details in:
config/emails/change_password
config/emails/register

File Storage

DSpace supports two distinct options for storing your repository bitstreams (uploaded files). The files are not stored in the database in which Metadata, user information, ... are stored. An assetstore is a directory on your server, on which the bitstreams are stored and consulted afterwards. The usage of different assetstore directories is the default "technique" in DSpace. The parameters below define which assetstores are present, and which one should be used for newly incoming items. As an alternative, DSpace can also use SRB (Storage Resource Brokerage) as an alternative. See SRB File Storage for details regarding SRB.

Property:

assetstore.dir

Example Value:

assetstore.dir = ${dspace.dir}/assetstore

Informational Note:

This is Asset (bitstream) store number 0 (Zero). You need not place your assetstore under the /dspace directory, but may want to place it on a different logical volume on the server that DSpace resides. So, you might have something like this: assetstore.dir = /storevgm/assestore .

Property:

Code Block
assetstore.dir.1
assetstore.dir.2

Example Value:

Code Block
assetstore.dir.1 = /second/assetstore
assetstore.dir.2 = /third/assetstore

Informational Note:

This property specifies extra asset stores like the one above, counting from one (1) upwards. This property is commented out (#) until it is needed.

Property:

assetstore.incoming

Example Value:

assetstore.incoming = 1

Informational Note:

Specify the number of the store to use for new bitstreams with this property. The default is 0 [zero] which corresponds to the 'assestore.dir' above. As the asset store number is stored in the item metadata (in the database), always keep the assetstore numbering consistent and don't change the asset store number in the item metadata.

Info
titleBe Careful

In the examples above, you can see that your storage does not have to be under the /dspace directory. For the default installation it needs to reside on the same server (unless you plan to configure SRB (see below)). So, if you added storage space to your server, and it has a different logical volume/name/directory, you could have the following as an example:

assetstore.dir = /storevgm/assetstore
assetstore.dir.1 = /storevgm2/assetstore
assetstore.incoming = 1

...

Email address of the general site administrator (Webmaster)

Property:

alert.recipient

Example Value:

alert.recipient = john.doe@myu.edu

Informational Note:

Enter the recipient for server errors and alerts. This property is optional.

Property:

registration.notify

Example Value:

registration.notify = mike.smith@myu.edu

Informational Note:

Enter the recipient that will be notified when a new user registers on DSpace. This property is optional.

Property:

mail.charset

Example Value:

mail.charset = UTF-8

Informational Note:

Set the default mail character set. This may be over-ridden by providing a line inside the email template 'charset: <encoding>', otherwise this default is used.

Property:

mail.allowed.referrers

Example Value:

mail.allowed.referrers = localhost

Informational Note:

A comma separated list of hostnames that are allowed to refer browsers to email forms. Default behavior is to accept referrals only from dspace.hostname. This property is optional.

Property:

mail.extraproperties

Example Value:

Code Block
mail.extraproperties = mail.smtp.socketFactory.port=465, \
       mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory, \
       mail.smtp.socketFactory.fallback=false

Informational Note:

If you need to pass extra settings to the Java mail library. Comma separated, equals sign between the key and the value. This property is optional.

Property:

mail.server.disabled

Example Value:

mail.server.disabled = false

Informational Note:

An option is added to disable the mailserver. By default, this property is set to 'false'. By setting value to 'true', DSpace will not send out emails. It will instead log the subject of the email which should have been sent. This is especially useful for development and test environments where production data is used when testing functionality. This property is optional.

Property:

mail.session.name

Example Value:

mail.session.name = myDSpace

Informational Note:

Specifies the name of a javax.mail.Session object stored in JNDI under java:comp/env/mail.  The default value is "Session".

Property:

default.language

Example Value:

default.language = en_US

Informational Note:

If no other language is explicitly stated in the input-forms.xml, the default language will be attributed to the metadata values.

Wording of E-mail Messages

Sometimes DSpace automatically sends e-mail messages to users, for example, to inform them of a new work flow task, or as a subscription e-mail alert. The wording of emails can be changed by editing the relevant file in [dspace]/config/emails . Each file is commented. Be careful to keep the right number 'placeholders' (e.g.{2}).

Note: You should replace the contact-information "dspace-help@myu.edu or call us at xxx-555-xxxx" with your own contact details in:
config/emails/change_password
config/emails/register

File Storage

DSpace supports two distinct options for storing your repository bitstreams (uploaded files). The files are not stored in the database in which Metadata, user information, ... are stored. An assetstore is a directory on your server, on which the bitstreams are stored and consulted afterwards. The usage of different assetstore directories is the default "technique" in DSpace. The parameters below define which assetstores are present, and which one should be used for newly incoming items. As an alternative, DSpace can also use SRB (Storage Resource Brokerage) as an alternative. See SRB File Storage for details regarding SRB.

Property:

assetstore.dir

Example Value:

assetstore.dir = ${dspace.dir}/assetstore

Informational Note:

This is Asset (bitstream) store number 0 (Zero). You need not place your assetstore under the /dspace directory, but may want to place it on a different logical volume on the server that DSpace resides. So, you might have something like this: assetstore.dir = /storevgm/assestore .

Property:

Code Block
assetstore.dir.1
assetstore.dir.2

Example Value:

Code Block
assetstore.dir.1 = /second/assetstore
assetstore.dir.2 = /third/assetstore

Informational Note:

This property specifies extra asset stores like the one above, counting from one (1) upwards. This property is commented out (#) until it is needed.

Property:

assetstore.incoming

Example Value:

assetstore.incoming = 1

Informational Note:

Specify the number of the store to use for new bitstreams with this property. The default is 0 [zero] which corresponds to the 'assestore.dir' above. As the asset store number is stored in the item metadata (in the database), always keep the assetstore numbering consistent and don't change the asset store number in the item metadata.

Info
titleBe Careful

In the examples above, you can see that your storage does not have to be under the /dspace directory. For the default installation it needs to reside on the same server (unless you plan to configure SRB (see below)). So, if you added storage space to your server, and it has a different logical volume/name/directory, you could have the following as an example:

assetstore.dir = /storevgm/assetstore
assetstore.dir.1 = /storevgm2/assetstore
assetstore.incoming = 1


Please Note: When adding additional storage configuration, you will then need to uncomment and declare assestore.incoming = 1

SRB (Storage Resource Brokerage) File Storage

An alternate to using the default storage framework is to use Storage Resource Brokerage (SRB). This can provide a different level of storage and disaster recovery. (Storage can take place on storage that is off-site.) Refer to http://www.sdsc.edu/srb/index.php/Main_Page for complete details regarding SRB.

The same framework is used to configure SRB storage. That is, the asset store number (0..n) can reference a file system directory as above or it can reference a set of SRB account parameters. But any particular asset store number can reference one or the other but not both. This way traditional and SRB storage can both be used but with different asset store numbers. The same cautions mentioned above apply to SRB asset stores as well. The particular asset store a bitstream is stored in is held in the database, so don't move bitstreams between asset stores, and do not renumber them.

Property:

srb.hosts.1

Example value:

srb.hosts.1 = mysrbmcathost.myu.edu

Property:

srb.port.1

Example value:

srb.port.1 = 5544

Property:

srb.mcatzone.1

Example value:

srb.mcatzone.1 = mysrbzone

Informational Note:

Your SRB Metadata Catalog Zone. An SRB Zone (or zone for short) is a set of SRB servers 'brokered' or administered through a single MCAT. Hence a zone consists of one or more SRB servers along with one MCAT-enabled server. Any existing SRB system (version 2.x.x and below) can be viewed as an SRB zone. For more information on zones, please check http://www.sdsc.edu/srb/index.php/Zones.

Property:

srb.mdasdomainname.1

Example Value:

srb.mdasdomainname.1 = mysrbdomain

Informational Note:

Your SRB domain. This domain should be created under the same zone, specified in srb.mcatzone. Information on domains is included here http://www.sdsc.edu/srb/index.php/Zones.

Property:

srb.defaultstorageresource.1

Example Value:

srb.defaultstorageresource.1 = mydefaultsrbresource

Informational Note:

Your default SRB Storage resource.

Property:

srb.username.1

Example Value:

srb.username.1 = mysrbuser

Informational Note:

Your SRB Username.

Property:

srb.password.1

Example Value:

srb.password.1 = mysrbpassword

Informational Note:

Your SRB Password.

Property:

srb.homedirectory.1

Example Value:

Code Block
srb.homedirectory.1 =
   /mysrbzone/home/ mysrbuser.mysrbdomain

Informational Note:

Your SRB Homedirectory

Property:

srb.parentdir.1

Example Value:

srb.parentdir.1 = mysrbdspaceassetstore

Informational Note:

Several of the terms, such as mcatzone, have meaning only in the SRB context and will be familiar to SRB users. The last, srb.paratdir.n, can be used for additional (SRB) upper directory structure within an SRB account. This property value could be blank as well.

The 'assetstore.incoming' property is an integer that references where new bitstreams will be stored. The default (say the starting reference) is zero. The value will be used to identify the storage where all new bitstreams will be stored until this number is changed. This number is stored in the Bitstream table (store_number column) in the DSpace database, so older bitstreams that may have been stored when 'asset.incoming' had a different value can be found.

In the simple case in which DSpace uses local (or mounted) storage the number can refer to different directories (or partitions). This gives DSpace some level of scalability. The number links to another set of properties 'assetstore.dir', 'assetstore.dir.1' (remember zero is default), assetstore.dir.2', etc., where the values are directories.

To support the use of SRB DSpace uses the same scheme but broaden to support:

  • using SRB instead of the local file system
  • using the local file system (native DSpace)
  • using a mix of SRB and local file system
    in this broadened use of the 'asset.incoming'

SRB (Storage Resource Brokerage) File Storage

An alternate to using the default storage framework is to use Storage Resource Brokerage (SRB). This can provide a different level of storage and disaster recovery. (Storage can take place on storage that is off-site.) Refer to http://www.sdsc.edu/srb/index.php/Main_Page for complete details regarding SRB.

The same framework is used to configure SRB storage. That is, the asset store number (0..n) can reference a file system directory as above or it can reference a set of SRB account parameters. But any particular asset store number can reference one or the other but not both. This way traditional and SRB storage can both be used but with different asset store numbers. The same cautions mentioned above apply to SRB asset stores as well. The particular asset store a bitstream is stored in is held in the database, so don't move bitstreams between asset stores, and do not renumber them.

Property:

srb.hosts.1

Example value:

srb.hosts.1 = mysrbmcathost.myu.edu

Property:

srb.port.1

Example value:

srb.port.1 = 5544

Property:

srb.mcatzone.1

Example value:

srb.mcatzone.1 = mysrbzone

Informational Note:

Your SRB Metadata Catalog Zone. An SRB Zone (or zone for short) is a set of SRB servers 'brokered' or administered through a single MCAT. Hence a zone consists of one or more SRB servers along with one MCAT-enabled server. Any existing SRB system (version 2.x.x and below) can be viewed as an SRB zone. For more information on zones, please check http://www.sdsc.edu/srb/index.php/Zones.

Property:

srb.mdasdomainname.1

Example Value:

srb.mdasdomainname.1 = mysrbdomain

Informational Note:

Your SRB domain. This domain should be created under the same zone, specified in srb.mcatzone. Information on domains is included here http://www.sdsc.edu/srb/index.php/Zones.

Property:

srb.defaultstorageresource.1

Example Value:

srb.defaultstorageresource.1 = mydefaultsrbresource

Informational Note:

Your default SRB Storage resource.

Property:

srb.username.1

Example Value:

srb.username.1 = mysrbuser

Informational Note:

Your SRB Username.

Property:

srb.password.1

Example Value:

srb.password.1 = mysrbpassword

Informational Note:

Your SRB Password.

Property:

srb.homedirectory.1

Example Value:

Code Block
srb.homedirectory.1 =
   /mysrbzone/home/ mysrbuser.mysrbdomain

Informational Note:

Your SRB Homedirectory

Property:

srb.parentdir.1

Example Value:

srb.parentdir.1 = mysrbdspaceassetstore

Informational Note:

Several of the terms, such as mcatzone, have meaning only in the SRB context and will be familiar to SRB users. The last, srb.paratdir.n, can be used for additional (SRB) upper directory structure within an SRB account. This property value could be blank as well.

The 'assetstore.incoming' property is an integer that references where new bitstreams will be stored. The default (say the starting reference) is zero. The value will be used to identify the storage where all new bitstreams will be stored until this number is changed. This number is stored in the Bitstream table (store_number column) in the DSpace database, so older bitstreams that may have been stored when 'asset.incoming' had a different value can be found.

In the simple case in which DSpace uses local (or mounted) storage the number can refer to different directories (or partitions). This gives DSpace some level of scalability. The number links to another set of properties 'assetstore.dir', 'assetstore.dir.1' (remember zero is default), assetstore.dir.2', etc., where the values are directories.

To support the use of SRB DSpace uses the same scheme but broaden to support:

  • using SRB instead of the local file system
  • using the local file system (native DSpace)
  • using a mix of SRB and local file system
    in this broadened use of the 'asset.incoming' integer will refer to one of the following storage locations:

...

Info

Since DSpace 4.0 the advanced search module named Discovery (based on Apache SOLR) is the default search provider. It provides up-to-date features, such as filtering/faceting, hit highlighting, search snippets, etc.

A detailed documentation is available for customization, see Discovery

Please refer to ReIndexing Content with the old legacy providers (DBMS for Browse or Lucene for Search) refer to Legacy methods for re-indexing content if you want re-enable and customize the "legacy" DSpace search engine (based on Apache Lucene).

...

The CNRI Handle system is a 3rd party service for maintaining persistent URL's. For a nominal fee, you can register a handle prefix for your repository. As a result, your repository items will be also available under the links http://handle.net/<<handle prefix>>/<<item id>>. As the base url of your repository might change or evolve, the persistent handle.net URL's secure the consistency of links to your repository items. For complete information regarding the Handle server, the user should consult Section 3.4.4. The Handle Server section of Installing DSpace.

Property:

handle.canonical.prefix

Example Value

handle.canonical.prefix = http://hdl.handle.net/
handle.canonical.prefix = ${dspace.url}/handle/

Informational Note:

Canonical Handle URL prefix. By default, DSpace is configured to use http://hdl.handle.net/ as the canonical URL prefix when generating dc.identifier.uri during submission, and in the 'identifier' displayed in item record pages. If you do not subscribe to CNRI's handle service, you can change this to match the persistent URL service you use, or you can force DSpace to use your site's URL, e.g. handle.canonical.prefix = ${dspace.url}/handle/. Note that this will not alter dc.identifer.uri metadata for existing items (only for subsequent submissions).

Property:

handle.prefix

Example Value

handle.prefix = 1234.56789

Informational Note:

The default installed by DSpace is 123456789 but you will replace this upon receiving a handle from CNRI.

Property:

handle.dir

Example Value:

handle.dir = ${dspace.dir}/handle-server

Informational Note:

The default files, as shown in the Example Value is where DSpace will install the files used for the Handle Server.

For complete information regarding the Handle server, the user should consult 3.3.4. The Handle Server section of Installing DSpace.

Delegation Administration: Authorization System Configuration

...

Community Administration: Subcommunities and Collections

Property:

core.authorization.community-admin.create-subelement

Example Value:

core.authorization.community-admin.create-subelement = true

Informational Note:

Authorization for a delegated community administrator to create subcommunities or collections.

Property:

core.authorization.community-admin.delete-subelement

Example Value:

core.authorization.community-admin.delete-subelement = true

Informational Note:

Authorization for a delegated community administrator to delete subcommunities or collections.

Community Administration: Policies and The group of administrators

Property:

core.authorization.community-admin.policies

Example Value:

core.authorization.community-admin.policies = true

Informational Note:

Authorization for a delegated community administrator to administrate the community policies.

Property:

core.authorization.community-admin.admin-group

Example Value:

core.authorization.community-admin.admin-group = true

Informational Note:

Authorization for a delegated community administrator to edit the group of community admins.

Community Administration: Collections in the above Community

 

Property:

core.authorization.community-admin.collection.policies

Example Value:

core.authorization.community-admin.collection.policies = true

Informational Note:

Authorization for a delegated community administrator to administrate the policies for underlying collections.

Property:

core.authorization.community-admin.collection.template-item

Example Value:

core.authorization.community-admin.collection.template-item = true

Informational Note:

Authorization for a delegated community administrator to administrate the item template for underlying collections.

Property:

core.authorization.community-admin.collection.submitters

Example Value:

core.authorization.community-admin.collection.submitters = true

Informational Note:

Authorization for a delegated community administrator to administrate the group of submitters for underlying collections.

Property:

core.authorization.community-admin.collection.workflows

Example Value:

core.authorization.community-admin.collection.workflows = true

Informational Note:

Authorization for a delegated community administrator to administrate the workflows for underlying collections.

Property:

core.authorization.community-admin.collection.admin-group

Example Value:

core.authorization.community-admin.collection.admin-group = true

Informational Note:

Authorization for a delegated community administrator to administrate the group of administrators for underlying collections.

Community Administration: Items Owned by Collections in the Above Community

Property:

core.authorization.community-admin.item.delete

Example Value:

core.authorization.community-admin.item.delete = true

Informational Note:

Authorization for a delegated community administrator to delete items in underlying collections.

Property:

core.authorization.community-admin.item.withdraw

Example Value:

core.authorization.community-admin.item.withdraw = true

Informational Note:

Authorization for a delegated community administrator to withdraw items in underlying collections.

Property:

core.authorization.community-admin.item.reinstate

Example Value:

core.authorization.community-admin.item.reinstate = true

Informational Note:

Authorization for a delegated community administrator to reinstate items in underlying collections.

Property:

core.authorization.community-admin.item.policies

Example Value:

core.authorization.community-admin.item.policies = true

Informational Note:

Authorization for a delegated community administrator to administrate item policies in underlying collections.

Community Administration: Bundles of Bitstreams, related to items owned by collections in the above Community

Property:

core.authorization.community-admin.item.create-bitstream

Example Value:

core.authorization.community-admin.item.create-bitstream = true

Informational Note:

Authorization for a delegated community administrator to create additional bitstreams in items in underlying collections.

Property:

core.authorization.community-admin.item.delete-bitstream

Example Value:

core.authorization.community-admin.item.delete-bitstream = true

Informational Note:

Authorization for a delegated community administrator to delete bitstreams from items in underlying collections.

Property:

core.authorization.community-admin.item.cc-license

Example Value:

core.authorization.community-admin.item.cc-license = true

Informational Note:

Authorization for a delegated community administrator to administer licenses from items in underlying collections.

Community Administration:
The properties for collection administrators work similar to those
of community administrators,
with respect to collection administration.

Code Block
core.authorization.collection-admin.policies
core.authorization.collection-admin.template-item
core.authorization.collection-admin.submitters
core.authorization.collection-admin.workflows
core.authorization.collection-admin.admin-group

Collection Administration:
Item owned by the above CollectionThe properties for collection
administrators work similar to those of
community administrators,
with respect to administration of
items in underlying collections.

Code Block
core.authorization.collection-admin.item.delete
core.authorization.collection-admin.item.withdraw
core.authorization.collection-admin.item.reinstatiate
core.authorization.collection-admin.item.policies

Collection Administration:
Bundles of bitstreams, related to items owned by collections in the
above Community. The properties for collection administrators
work similar to those of community administrators, with respect to
administration of bitstreams related to items in underlying collections.

Code Block
core.authorization.collection-admin.item.create-bitstream
core.authorization.collection-admin.item.delete-bitstream
core.authorization.collection-admin.item-admin.cc-license

Item Administration.
The properties for item administrators work similar to those
of community and collection administrators, with respect to administration of
items in underlying collections.

core.authorization.item-admin.policies

Item Administration:
Bundles of bitstreams, related to items owned by collections in the
above Community. The properties for item administrators work
similar to those of community and collection administrators,
with respect to administration of bitstreams
related to items in underlying collections.

Code Block
core.authorization.item-admin.create-bitstream
core.authorization.item-admin.delete-bitstream
core.authorization.item-admin.cc-license-admin.cc-license

Login as feature

Property:

webui.user.assumelogin

Example Value:

webui.user.assumelogin = true

Informational Note:

Determine if super administrators (those whom are in the Administrators group) can login as another user from the "edit eperson" page. This is useful for debugging problems in a running dspace instance, especially in the workflow process. The default value is false, i.e., no one may assume the login of another user.

Please note that this configuration parameter has changed name in DSpace 4.0 from xmlui.user.assumelogin to webui.user.assumelogin as it is now supported also in the JSP UI

Restricted Item Visibility Settings

...

Info
titleMore Information on MediaFilters

For more information on Media/Format Filters, see the section on Mediafilters for Transforming DSpace Content (MediaFilters).

Crosswalk and Packager Plugin Settings

...

If you are unfamiliar with the Event System in DSpace, and require additional information with terms like "Consumer" and "Dispatcher" please refer to :http://wiki.dspace.org/index.php/EventSystemPrototype EventSystemPrototype.

Property:

event.dispatcher.default.class

Example Value:

event.dispatcher.default.class = org.dspace.event.BasicDispatcher

Informational Note:

This is the default synchronous dispatcher (Same behavior as traditional DSpace).

Property:

event.dispatcher.default.consumers

Example Value:

event.dispatcher.default.consumers = search, browse, eperson

Informational Note:

This is the default synchronous dispatcher (Same behavior as traditional DSpace).

Property:

event.dispatcher.noindex.class

Example Value:

event.dispatcher.noindex.class = org.dspace.event.BasicDispatcher

Informational Note:

The noindex dispatcher will not create search or browse indexes (useful for batch item imports).

Property:

event.dispatcher.noindex.consumers

Example Value:

event.dispatcher.noindex.consumers = eperson

Informational Note:

The noindex dispatcher will not create search or browse indexes (useful for batch item imports).

Property:

event.consumer.search.class

Example Value:

event.consumer.search.class = org.dspace.search.SearchConsumer

Informational Note:

Consumer to maintain the search index.

Property:

event.consumer.search.filters

Example Value:

{{event.consumer.search.filters = }}
Community | Collection | Item | Bundle+Add | Create | Modify | Modify_Metadata | Delete | Remove

Informational Note:

Consumer to maintain the search index.

Property:

event.consumer.browse.class

Example Value:

event.consumer.browse.class = org.dspace.browse.BrowseConsumer

Informational Note:

Consumer to maintain the browse index.

Property:

event.consumer.browse.filters

Example Value:

event.consumer.browse.filters =
Community | Collection | Item | Bundle+Add | Create | Modify | Modify_Metadata | Delete | Remove

Informational Note:

Consumer to maintain the browse index.

Property:

event.consumer.eperson.class

Example Value:

event.consumer.eperson.class = org.dspace.eperson.EPersonConsumer

Informational Note:

Consumer related to EPerson changes

Property:

event.consumer.eperson.filters

Example Value:

event.consumer.eperson.filters = EPerson+Create

Informational Note:

Consumer related to EPerson changes

Property:

event.consumer.test.class

Example Value:

event.consumer.test.class = org.dspace.event.TestConsumer

Informational Note:

Test consumer for debugging and monitoring. Commented out by default.

Property:

event.consumer.test.filters

Example Value:

event.consumer.test.filters = All+All

Informational Note:

Test consumer for debugging and monitoring. Commented out by default.

Property:

testConsumer.verbose

Example Value:

testConsumer.verbose = true

Informational Note:

Set this to true to enable testConsumer messages to standard output. Commented out by default.

...

Property:

embargo.field.terms

Example Value:

embargo.field.terms = SCHEMA.ELEMENT.QUALIFIER

Informational Note:

Embargo terms will be stored in the item metadata. This property determines in which metadata field these terms will be stored. An example could be dc.embargo.terms

Property:

embargo.field.lift

Example Value:

embargo.field.lift = SCHEMA.ELEMENT.QUALIFIER

Informational Note:

The Embargo lift date will be stored in the item metadata. This property determines in which metadata field the computed embargo lift date will be stored. You may need to create a DC metadata field in your Metadata Format Registry if it does not already exist. An example could be dc.embargo.liftdate

Property:

embargo.terms.open

Example Value:

embargo.terms.open = forever

Informational Note:

You can determine your own values for the embargo.field.terms property (see above). This property determines what the string value will be for indefinite embargos. The string in terms field to indicate indefinite embargo.

Property::

plugin.single.org.dspace.embargo.EmbargoSetter

Example Value:

plugin.single.org.dspace.embargo.EmbargoSetter = org.dspace.embargo.DefaultEmbargoSetter

Informational Note:

To implement the business logic to set your embargos, you need to override the EmbargoSetter class. If you use the value DefaultEmbargoSetter, the default implementation will be used.

Property:

plugin.single.org.dspace.embargo.EmbargoLifterembargo.terms.open

Example Value:

plugin.single.org.dspace.embargo.terms.open = forever.EmbargoLifter = org.dspace.embargo.DefaultEmbargoLifter

Informational Note:You can determine your own values for the embargo.field.terms property (see above). This property determines what the string value will be for indefinite embargos. The string in terms field to indicate indefinite embargo

To implement the business logic to lift your embargos, you need to override the EmbargoLifter class. If you use the value DefaultEmbargoLifter, the default implementation will be used.

Info
titleMore Embargo Details

More details on Embargo configuration, including specific examples can be found in the Embargo section of the documentation.

Checksum Checker Settings

DSpace now comes with a Checksum Checker script ([dspace]/bin/dspace checker) which can be scheduled to verify the checksum of every item within DSpace. Since DSpace calculates and records the checksum of every file submitted to it, this script is able to determine whether or not a file has been changed (either manually or by some sort of corruption or virus). The idea being that the earlier you can identify a file has changed, the more likely you'd be able to recover it (assuming it was not a wanted change).

Property:

plugin.single.org.dspace.embargochecker.EmbargoSetterBitstreamDispatcher

Example Value:

plugin.single.org.dspace.embargochecker.EmbargoSetter BitstreamDispatcher = org.dspace.embargo.DefaultEmbargoSetterchecker.SimpleDispatcher

Informational Note:

The Default dispatcher is case non is specified.

Property:

checker.retention.default

Example Value:

checker.retention.default = 10y

Informational Note:

To implement the business logic to set your embargos, you need to override the EmbargoSetter class. If you use the value DefaultEmbargoSetter, the default implementation will be usedThis option specifies the default time frame after which all checksum checks are removed from the database (defaults to 10 years). This means that after 10 years, all successful or unsuccessful matches are removed from the database.

Property:

pluginchecker.single.org.dspace.embargo.EmbargoLifterretention.CHECKSUM_MATCH

Example Value:

pluginchecker.single.org.dspace.embargo.EmbargoLifter = org.dspace.embargo.DefaultEmbargoLifterretention.CHECKSUM_MATCH = 8w

Informational Note:

To implement the business logic to lift your embargos, you need to override the EmbargoLifter class. If you use the value DefaultEmbargoLifter, the default implementation will be usedThis option specifies the time frame after which a successful match will be removed from your DSpace database (defaults to 8 weeks). This means that after 8 weeks, all successful matches are automatically deleted from your database (in order to keep that database table from growing too large).

Info
titleMore Embargo Checksum Checking Details

More details on Embargo configuration, including specific examples can be found in the Embargo section of the documentation.

Checksum Checker Settings

DSpace now comes with a Checksum Checker script ([dspace]/bin/dspace checker) which can be scheduled to verify the checksum of every item within DSpace. Since DSpace calculates and records the checksum of every file submitted to it, this script is able to determine whether or not a file has been changed (either manually or by some sort of corruption or virus). The idea being that the earlier you can identify a file has changed, the more likely you'd be able to recover it (assuming it was not a wanted change).

Property:

plugin.single.org.dspace.checker.BitstreamDispatcher

Example Value:

plugin.single.org.dspace.checker.BitstreamDispatcher = org.dspace.checker.SimpleDispatcher

Informational Note:

The Default dispatcher is case non is specified.

Property:

checker.retention.default

Example Value:

checker.retention.default = 10y

Informational Note:

This option specifies the default time frame after which all checksum checks are removed from the database (defaults to 10 years). This means that after 10 years, all successful or unsuccessful matches are removed from the database.

Property:

checker.retention.CHECKSUM_MATCH

Example Value:

checker.retention.CHECKSUM_MATCH = 8w

Informational Note:

This option specifies the time frame after which a successful match will be removed from your DSpace database (defaults to 8 weeks). This means that after 8 weeks, all successful matches are automatically deleted from your database (in order to keep that database table from growing too large).

Info
titleMore Checksum Checking Details

For more information on using DSpace's built-in Checksum verification system, see the section on Validating CheckSums of Bitstreams.

Item Export and Download Settings

It is possible for an authorized user to request a complete export and download of a DSpace item in a compressed zip file. This zip file may contain the following:
dublin_core.xml
license.txt
contents (listing of the contents)
handle file itself and the extract file if available

The configuration settings control several aspects of this feature:

Property:

org.dspace.app.itemexport.work.dir

Example Value:

org.dspace.app.itemexport.work.dir = ${dspace.dir}/exports

Informational Note:

The directory where the exports will be done and compressed.

Property:

org.dspace.app.itemexport.download.dir

Example Value:

org.dspace.app.itemexport.download.dir = ${dspace.dir}/exports/download

Informational Note

The directory where the compressed files will reside and be read by the downloader.

Property:

org.dspace.app.itemexport.life.span.hours

Example Value:

org.dspace.app.itemexport.life.span.hours = 48

Informational Note

The length of time in hours each archive should live for. When new archives are created this entry is used to delete old ones.

Property:

org.dspace.app.itemexport.max.size

Example Value:

org.dspace.app.itemexport.max.size = 200

Informational Note

The maximum size in Megabytes (Mb) that the export should be. This is enforced before the compression. Each bitstream's size in each item being exported is added up, if their cumulative sizes are more than this entry the export is not kicked off.

Subscription Emails

DSpace, through some advanced installation and setup, is able to send out an email to collections that a user has subscribed. The user who is subscribed to a collection is emailed each time an item id added or modified. The following property key controls whether or not a user should be notified of a modification.

Property:

eperson.subscription.onlynew

Example Value:

eperson.subscription.onlynew = true

Informational Note:

For backwards compatibility, the subscription emails by default include any modified items. The property key is COMMENTED OUT by default.

Hiding Metadata

It is now possible to hide metadata from public consumption that is only available to the Administrator.

Property:

metadata.hide.dc.description.provenance

Example Value:

metadata.hide.dc.description.provenance = true

Informational Note:

Hides the metadata in the property key above except to the administrator. Fields named here are hidden in the following places UNLESS the logged-in user is an Administrator:

  1. XMLUI metadata XML view, and Item splash pages (long and short views).
  2. JSPUI Item splash pages
  3. OAI-PMH server, "oai_dc" format. (Note: Other formats are *not* affected.)To designate a field as hidden, add a property here in the form: metadata.hide.SCHEMA.ELEMENT.QUALIFIER = true. This default configuration hides the dc.description.provenance field, since that usually contains email addresses which ought to be kept private and is mainly of interest to administrators.

Settings for the Submission Process

These settings control three aspects of the submission process: thesis submission permission, whether or not a bitstream file is required when submitting to a collection and whether or not show a progress bar during the file upload.

 

For more information on using DSpace's built-in Checksum verification system, see the section on Validating CheckSums of Bitstreams.

Item Export and Download Settings

It is possible for an authorized user to request a complete export and download of a DSpace item in a compressed zip file. This zip file may contain the following:
dublin_core.xml
license.txt
contents (listing of the contents)
handle file itself and the extract file if available

The configuration settings control several aspects of this feature:

Property:

org.dspace.app.itemexport.work.dir

Example Value:

org.dspace.app.itemexport.work.dir = ${dspace.dir}/exports

Informational Note:

The directory where the exports will be done and compressed.

Property:

org.dspace.app.itemexport.download.dir

Example Value:

org.dspace.app.itemexport.download.dir = ${dspace.dir}/exports/download

Informational Note

The directory where the compressed files will reside and be read by the downloader.

Property:

org.dspace.app.itemexport.life.span.hours

Example Value:

org.dspace.app.itemexport.life.span.hours = 48

Informational Note

The length of time in hours each archive should live for. When new archives are created this entry is used to delete old ones.

Property:

org.dspace.app.itemexport.max.size

Example Value:

org.dspace.app.itemexport.max.size = 200

Informational Note

The maximum size in Megabytes (Mb) that the export should be. This is enforced before the compression. Each bitstream's size in each item being exported is added up, if their cumulative sizes are more than this entry the export is not kicked off.

Subscription Emails

DSpace, through some advanced installation and setup, is able to send out an email to collections that a user has subscribed. The user who is subscribed to a collection is emailed each time an item id added or modified. The following property key controls whether or not a user should be notified of a modification.

Property:

eperson.subscription.onlynew

Example Value:

eperson.subscription.onlynew = true

Informational Note:

For backwards compatibility, the subscription emails by default include any modified items. The property key is COMMENTED OUT by default.

Hiding Metadata

It is now possible to hide metadata from public consumption that is only available to the Administrator.

Property:

metadata.hide.dc.description.provenance

Example Value:

metadata.hide.dc.description.provenance = true

Informational Note:

Hides the metadata in the property key above except to the administrator. Fields named here are hidden in the following places UNLESS the logged-in user is an Administrator:

  1. XMLUI metadata XML view, and Item splash pages (long and short views).
  2. JSPUI Item splash pages
  3. OAI-PMH server, "oai_dc" format. (Note: Other formats are *not* affected.)To designate a field as hidden, add a property here in the form: metadata.hide.SCHEMA.ELEMENT.QUALIFIER = true. This default configuration hides the dc.description.provenance field, since that usually contains email addresses which ought to be kept private and is mainly of interest to administrators.

Settings for the Submission Process

These settings control three aspects of the submission process: thesis submission permission, whether or not a bitstream file is required when submitting to a collection and whether or not show a progress bar during the file upload.

 

Property:

webui.submit.blocktheses

Example Value:

webui.submit.blocktheses = false

Informational Note:

Controls whether or not the UI blocks submission marked as a thesis.

Property:

webui.submit.upload.required

Example Value:

webui.submit.upload.required = true

Informational Note:

Whether or not a file is required to be uploaded during the "Upload" step in the submission process. The default is true. If set to "false", then the submitter (human being) has the option to skip the uploading of a file.

Property:

webui.submit.upload.progressbar (new in DSpace 4.0)

Example Value:
webui.submit.upload.progressbar = true
Informational Note:

Whether or not show a progress bar during file upload. Please note that to work this feature requires a JSON endpoint (json/uploadProgress) that is enabled by default. See the named plugin for the interface org.dspace.app.webui.json.JSONRequest

org.dspace.app.webui.json.UploadProgressJSON = uploadProgress

This property is actually supported only by the JSPUI, the XMLUI doesn't provide yet a progress bar indicator for file upload.

Configuring the Sherpa/RoMEO Publishers Policy Database Integration

Since DSpace 4.0 an integration with the Sherpa/RoMEO Publishers Policy Database has been introduced to allow the show of the publisher policy in the submission upload step.

Info
titleSherpa/RoMEO Publishers Policy Database Integration

Actually this feature is available only for the JSP UI. Nonetheless the integration is mainly developed as an independent service at the dspace-api level.

webuisubmitupload.requiredwebuisubmit.upload.required = true

Property:

webui.submission.sherparomeo-policy-enabled

Example Value:

webui.submission.sherparomeo-policy-enabled = true

Property:

webui.submit.blocktheses

Example Value:

webui.submit.blocktheses = false

Informational Note:

Controls whether or not the UI blocks submission marked as a thesis.submission should try to use the Sherpa/RoMEO Publishers Policy Database Integration (default true)

Property:

sherpa.romeo.url

Example Value:

sherpa.romeo.url = http://www.sherpa.ac.uk/romeo/api29.php

Informational Note:

The Sherpa/RoMEO endpoint. Shared with the authority control feauture for Journal Title autocomplete see AuthorityControlSettings

Property:

sherpa.

romeo.

apikey

Example Value:
sherpa.
romeo.apikey = YOUR-API-KEY
Informational Note:

Whether or not a file is required to be uploaded during the "Upload" step in the submission process. The default is true. If set to "false", then the submitter (human being) has the option to skip the uploading of a file.

Property:

webui.submit.upload.progressbar (new in DSpace 4.0)

Example Value:
webui.submit.upload.progressbar = true
Informational Note:

Whether or not show a progress bar during file upload. Please note that to work this feature requires a JSON endpoint (json/uploadProgress) that is enabled by default. See the named plugin for the interface org.dspace.app.webui.json.JSONRequest

org.dspace.app.webui.json.UploadProgressJSON = uploadProgress

This property is actually supported only by the JSPUI, the XMLUI doesn't provide yet a progress bar indicator for file upload.

Configuring Creative Commons License

Allow to use a specific API key to raise the usage limit (500 calls/day for unregistred user).

You can register for a free api access key at http://www.sherpa.ac.uk/news/romeoapikeys.htm

The functionality rely on understanding to which Journal (ISSN) is related the submitting item. This is done out of box looking to some item metadata but a different strategy can be used as for example look to a metadata authority in the case that the Sherpa/RoMEO autocomplete for Journal is used (see AuthorityControlSettings)

The strategy used to discover the Journal related to the submission item is defined in the spring file /config/spring/api/sherpa.xml

Code Block
xml
xml
<bean class="org.dspace.app.sherpa.submit.SHERPASubmitConfigurationService"
		id="org.dspace.app.sherpa.submit.SHERPASubmitConfigurationService">
		<property name="issnItemExtractors">
			<list>
				<bean class="org.dspace.app.sherpa.submit.MetadataValueISSNExtractor">
					<property name="metadataList">
						<list>
							<value>dc.identifier.issn</value>
						</list>
					</property>
				</bean>
				<!-- Use the follow if you have the SHERPARoMEOJournalTitle enabled
				<bean class="org.dspace.app.sherpa.submit.MetadataAuthorityISSNExtractor">
					<property name="metadataList">
						<list>
							<value>dc.title.alternative</value>
						</list>
					</property>
				</bean>  -->
			</list>
		</property>	
	</bean>

Configuring Creative Commons License

The following configurations are for This enables the Creative Commons license step in the submission process of either the JSP or XML User Interface (JSP UI or XML UI). Submitters are given an opportunity to select a Creative Common license to accompany the item. Creative Commons licenses govern the use of the content. For further details, refer to the Creative Commons website at http://creativecommons.org .

Creative Commons licensing is enabled as one step of the configurable submission process, and therefore optionally available and may be configured for any given collection that has a defined submission sequence, or be part of the "default" submission process. This process is described in the Submission User Interface section of this manual. There is a Creative Commons step already defined (step 5), but it is commented out, so enabling Creative Commons licensing is typically just a matter of uncommenting the CC License step.

Creative Commons licensing is captured slightly differently in each UI:

  • In the JSPUI, an "iframe" is opened to the Creative Commons site. When a Creative Commons license is selected from that site, information about the CC license is stored in a series of internal bitstreams:
    • The URL of the CC License is stored in a bitstream named "license_url" in the CC-LICENSE bundle
    • The full (HTML) text of the CC License is stored in a bitstream named "license_txt" in the CC-LICENSE bundle
    • The RDF version of the CC License is stored in a bitstream named "license_rdf" in the CC-LICENSE bundle
  • In the XMLUI, the Create Commons REST API is utilized. This allows the XMLUI to also store metadata references to the selected CC license, while also storing the CC License as a bitstream. In the XMLUI, the following CC License information is captured:
    • The URL of the CC License is stored in the "dc.rights.uri" metadata field (or whatever field is configured in the "cc.license.uri" setting below)
    • The name of the CC License is stored in the "dc.rights" metadata field (or whatever field is configured in the "cc.license.name" setting below). This only occurs if "cc.submit.setname=true" (default value)
    • The RDF version of the CC License is stored in a bitstream named "license_rdf" in the CC-LICENSE bundle (as long as "cc.submit.addbitstream=true", which is the default value)

The following configurations (in dspace.cfg) relate to the XMLUI Creative Commons license process ONLY "default" submission process. This process is described in the "Customizing and Configuring Submission User Interface" section of this manual. There is a Creative Commons step already defined (step 5), but it is commented out, so enabling Creative Commons licensing is typically just a matter of uncommenting the CC License step. For the JSP UI, Creative Commons licensing is effected by opening an Iframe to the Creative Commons site and capturing the selection result in several bitstreams, but the XML UI utilizes a more flexible web service. By default, when a license is selected in the interface, the URI for the license is stored in the 'dc.rights.uri' metadata field for the Item, and a representation of the license text is stored in a license bundle. In addition, the following properties in [dspace]/config/dspace.cfg may be customized for use:

Property:

cc.api.rooturl

Example Value:

cc.api.rooturl = http://api.creativecommons.org/rest/1.5

Informational Note:

Generally will never have to assign a different value - this is the base URL of the Creative Commons service API.

Property:

cc.license.uri

Example Value:

cc.license.uri = dc.rights.uri

Informational Note:

The field that holds the Creative Commons license URI. If you change from the default value (dc.rights.uri), you will have to reconfigure the XMLUI for proper display of license data

Property:

cc.license.name

Example Value:

cc.license.name = dc.rights

Informational Note:

The field that holds the Creative Commons license Name. If you change from the default value (dc.rights), you will have to reconfigure the XMLUI for proper display of license data

Property:

cc.submit.setname

Example Value:

cc.submit.setname = true

Informational Note:

If true, the license assignment will add the field configured with the "cc.license.name" with the name of the CC license; if false, only "cc.license.uri" field is added.

Property:

cc.submit.addbitstream

Example Value:

cc.submit.addbitstream = true

Informational Note:

If true, the license assignment will add a bitstream with the CC license RDF; if false, only metadata field(s) are added.

Property:

cc.license.classfilter

Example Value:

cc.license.classfilter = recombo,mark

Informational Note:

This list defines the values that will be excluded from the license (class) selection list, as defined by the web service at the URL: http://api.creativecommons.org/rest/1.5/classes

Property:

cc.license.jurisdiction

Example Value:

cc.license.jurisdiction = nz

Informational Note:

Should a jurisdiction be used? If so, which one? See http://creativecommons.org/international/ for a list of possible codes (e.g. nz = New Zealand, uk = England and Wales, jp = Japan)

...

Property:

webui.licence_bundle.show

Example Value:

webui.licence_bundle.show = false

Informational Note:

Sets whether to display the contents of the license bundle (often just the deposit license in the standard DSpace installation).

Property:

webui.browse.thubnail.show

Example Value:

webui.browse.thubnail.show = true

Informational Note:

Controls whether to display thumbnails on browse and search result pages. If you have customized the Browse columnlist, then you must also include a "thumbnail" column in your configuration. _(This configuration property key is not used by XMLUI. To show thumbnails using XMLUI, you need to create a theme which displays them)._

Property:

webui.browse.thumbnail.maxheight

Example Value:

webui.browse.thumbnail.maxheight = 80

Informational Note:

This property determines the maximum height of the browse/search thumbnails in pixels (px). This only needs to be set if the thumbnails are required to be smaller than the dimensions of thumbnails generated by MediaFilter.

Property:

webui.browse.thumbnail.maxwidth

Example Value:

webui.browse.thumbnail.maxwidth = 80

Informational Note:

This determines the maximum width of the browse/search thumbnails in pixels (px). This only needs to be set if the thumbnails are required to be smaller than the dimensions of thumbnails generated by MediaFilter.

Property:

webui.item.thumbnail.show

Example Value:

webui.item.thumbnail.show = true

Informational Note:

This determines whether or not to display the thumbnail against each bitstream. (This configuration property key is not used by XMLUI. To show thumbnails using XMLUI, you need to create a theme which displays them).

Property:

webui.browse.thumbnail.linkbehavior

Example Value:

webui.browse.thumbnail.linkbehavior = item

Informational Note:

This determines where clicks on the thumbnail in browse and search screens should lead. The only values currently supported are "item" or "bitstream", which will either take the user to the item page, or directly download the bitstream.

Property:

thumbnail.maxwidth

Example Value:

thumbnail.maxwidth = 80

Informational Note:

This property sets the maximum width of generated thumbnails that are being displayed on item pages.

Property:

thumbnail.maxheight

Example Value:

thumbnail.maxheight = 80

Informational Note:

This property sets the maximum height of generated thumbnails that are being displayed on item pages.

Property:

webui.preview.enabled

Example Value:

webui.preview.enabled = false

Informational Note:

Whether or not the user can "preview" the image.

Property:

webui.preview.maxwidth

Example Value:

webui.preview.maxwidth = 600

Informational Note:

This property sets the maximum width for the preview image.

Property:

webui.preview.maxheight

Example Value:

webui.preview.maxheight = 600

Informational Note:

This property sets the maximum height for the preview image.

Property:

webui.preview.brand

Example Value:

webui.preview.brand = My Institution Name

Informational Note:

This is the brand text that will appear with the image.

Property:

webui.preview.brand.abbrev

Example Value:

webui.preview.brand.abbrev = MyOrg

Informational Note:

An abbreviated form of the full Branded Name. This will be used when the preview image cannot fit the normal text.

Property:

webui.preview.brand.height

Example Value:

webui.preview.brand.height = 20

Informational Note:

The height (in px) of the brand.

Property:

webui.preview.brand.font

Example Value:

webui.preview.brand.font = SansSerif

Informational Note:

This property sets the font for your Brand text that appears with the image.

Property:

webui.preview.brand.fontpoint

Example Value:

webui.preview.brand.fontpoint = 12

Informational Note:

This property sets the font point (size) for your Brand text that appears with the image.

Property:

webui.preview.dc

Example Value:

webui.preview.dc = rights

Informational Note:

The Dublin Core field that will display along with the preview. This field is optional.

Property:

webui.strengths.show

Example Value:

webui.strengths.show = false

Informational Note:

Determines if communities and collections should display item counts when listed. The default behavior if omitted, is true. (This configuration property key is not used by XMLUI. To show strengths using XMLUI, you need to create a theme which displays them).false.

Property:

webui.strengths.cache

Example Value:

webui.strengths.cache = false

Informational Note:

When showing the strengths, should they be counted in real time, or fetched from the cache. Counts fetched in real time will perform an actual count of the database contents every time a page with this feature is requested, which will not scale. If you set the property key is set to cache ("true") you must run the following command periodically to update the count: /[dspace]/bin/dspace itemcounter. The default is to count in real time (set to "false").

...

Property:

browseDAO.class

Example Value:

browseDAO.class = org.dspace.browse.SolrBrowseDAO

Informational Note:

This property configures the Java class that is used for READ operations by the Browse System. You need to have Discovery enabled (this is the default since DSpace 4.0) to use the Solr Browse DAOs

Property:

browseCreateDAO.class

Example Value:

browseCreateDAO.class = org.dspace.browse.SolrBrowseCreateDAO

Informational Note:

This property configures the java class that is used for WRITE operations by the Browse System. You need to have Discovery enabled (this is the default since DSpace 4.0) to use the Solr Browse DAOs

If you want to re-enable the legacy DBMS Browse Engine please refer to ReIndexing Content with the old legacy providers ( DBMS for Browse or Lucene for Search)Browse Engine please refer to Legacy methods for re-indexing content

Defining the Indexes

 

Info

If you make changes in this section be sure to update your SOLR indexes running the Discovery Maintenance Script, see Discovery

...

Info

Since DSpace 4.0 this will apply by default only to JSPUI. XML UI will use a new way to configure the recent submissions that does not rely on the Browse System. See Discovery

...

Property:

recent.submission.sort-option

Example Value:

recent.submission.sort-option = dateaccessioned

Informational Note:

First is to define Define the sort name (from webui.browse.sort-options) to use for displaying recent submissions.

Property:

recent.submissions.count

Example Value:

recent.submissions.count = 5

Informational Note:

Defines how many recent submissions should be displayed at any one time.

...

Example Value =http:/www..acuk//api24php_

Property:

plugin.named.org.dspace.content.authority.ChoiceAuthority

Example Value:

Code Block
plugin.named.org.dspace.content.authority.ChoiceAuthority = \
	org.dspace.content.authority.SampleAuthority = Sample, \
 	org.dspace.content.authority.LCNameAuthority = LCNameAuthority, \
 	org.dspace.content.authority.SHERPARoMEOPublisher = SRPublisher, \
 	org.dspace.content.authority.SHERPARoMEOJournalTitle = SRJournalTitle

Informational Note:

--

Property:

plugin.selfnamed.org.dspace.content.authority.ChoiceAuthority

Example Value:

Code Block
plugin.selfnamed.org.dspace.content.authority.ChoiceAuthority = \
	org.dspace.content.authority.DCInputAuthority

Property:

lcname.url

Example Value:

lcname.url = http://alcme.oclc.org/srw/search/lcnaf_

Informational Note:

Location (URL) of the Library of Congress Name Service

Property:

sherpa.romeo.url

:

sherpa.romeo.url

/

sherpa

.

romeo

.

apikey

Informational Note:

Location (URL) of the SHERPA/RoMEO authority pluginPlease refers to the Sherpa/RoMEO Publishers Policy Database Integration section for details about such properties. See Configuring the Sherpa/RoMEO Publishers Policy Database Integration

Property:

authority.minconfidence

Example Value:

authority.minconfidence = ambiguous

Informational Note:

This sets the default lowest confidence level at which a metadata value is included in an authority-controlled browse (and search) index. It is a symbolic keyword, one of the following values (listed in descending order): accepted, uncertain, ambiguous, notfound, failed, rejected, novalue, unset. See org.dspace.content.authority.Choices source for descriptions.

Property:

xmlui.lookup.select.size

Example Value:

xmlui.lookup.select.size = 12

Informational Note:

This property sets the number of selectable choices in the Choices lookup popup

...

Property:

webui.supported.localelocales

Example Value:

webui.supported.locale locales = en, de

or perhaps

webui.supported.locals locales = en, en_ca, de

Informational Note:

All the locales that are supported by this instance of DSpace. Comma separated list.

...

The DSpace digital repository supports two user interfaces: one based upon JSP technologies and the other based upon the Apache Cocoon framework. This section describes those configurations settings which are specific to the XMLUI interface based upon the Cocoon framework. (Prior to DSpace Release 1.5.1 XMLUI was referred to Manakin. You may still see references to "Manakin")

...

Property:

...

xmlui.supported.locales

...

Example Value:

...

xmlui.supported.locales = en, de

...

Informational Note:

...

based upon the Apache Cocoon framework. This section describes those configurations settings which are specific to the XMLUI interface based upon the Cocoon framework. (Prior to DSpace Release 1.5.1 XMLUI was referred to Manakin. You may still see references to "Manakin")

Property:

xmlui.force.ssl

Example Value:

xmlui.force.ssl = true

Informational Note:

Force all authenticated connections to use SSL, only non-authenticated connections are allowed over plain http. If set to true, then you need to ensure that the "dspace.hostname" parameter is set to the correctly.

Property:

xmlui.user.registration

Example Value:

xmlui.user.registration = true

Informational Note:

Determine if new users should be allowed to register. This parameter is useful in conjunction with Shibboleth where you want to disallow registration because Shibboleth will automatically register the user. Default value is true.

Property:

xmlui.user.editmetadata

Example Value:

xmlui.user.editmetadata = true

Informational Note:

Determines if users should be able to edit their own metadata. This parameter is useful in conjunction with Shibboleth where you want to disable the user's ability to edit their metadata because it came from Shibboleth. Default value is true.

Property:

xmlui.user.assumelogon

Example Value:

xmlui.user.assumelogon = true

Informational Note:

Determine if super administrators (those whom are in the Administrators group) can login as another user from the "edit eperson" page. This is useful for debugging problems in a running dspace instance, especially in the workflow process. The default value is false, i.e., no one may assume the login of another userfrom Shibboleth. Default value is true.

Property:

xmlui.user.loginredirect

Example Value:

xmlui.user.loginredirect = /profile

Informational Note:

After a user has logged into the system, which url should they be directed? Leave this parameter blank or undefined to direct users to the homepage, or /profile for the user's profile, or another reasonable choice is /submissions to see if the user has any tasks awaiting their attention. The default is the repository home page.

Property:

xmlui.theme.allowoverrides

Example Value:

xmlui.theme.allowoverrides = false

Informational Note:

Allow the user to override which theme is used to display a particular page. When submitting a request add the HTTP parameter "themepath" which corresponds to a particular theme, that specified theme will be used instead of the any other configured theme. Note that this is a potential security hole allowing execution of unintended code on the server, this option is only for development and debugging it should be turned off for any production repository. The default value unless otherwise specified is "false".

Property:

xmlui.bundle.upload

Example Value:

xmlui.bundle.upload = ORIGINAL, METADATA, THUMBNAIL, LICENSE, CC_LICENSE

Informational Note:

Determine which bundles administrators and collection administrators may upload into an existing item through the administrative interface. If the user does not have the appropriate privileges (add and write) on the bundle then that bundle will not be shown to the user as an option.

Property:

xmlui.community-list.render.full

Example Value:

xmlui.community-list.render.full = true

Informational Note:

On the community-list page should all the metadata about a community/collection be available to the theme. This parameter defaults to true, but if you are experiencing performance problems on the community-list page you should experiment with turning this option off.

Property:

xmlui.community-list.cache

Example Value:

xmlui.community-list.cache = 12 hours

Informational Note:

Normally, Manakin will fully verify any cache pages before using a cache copy. This means that when the community-list page is viewed the database is queried for each community/collection to see if their metadata has been modified. This can be expensive for repositories with a large community tree. To help solve this problem you can set the cache to be assumed valued for a specific set of time. The downside of this is that new or editing communities/collections may not show up the website for a period of time.

Property:

xmlui.bistream.mods

Example Value:

xmlui.bistream.mods = true

Informational Note:

Optionally, you may configure Manakin to take advantage of metadata stored as a bitstream. The MODS metadata file must be inside the "METADATA" bundle and named MODS.xml. If this option is set to 'true' and the bitstream is present then it is made available to the theme for display.

Property:

xmlui.bitstream.mets

Example Value:

xmlui.bitstream.mets = true

Informational Note:

Optionally, you may configure Manakin to take advantage of metadata stored as a bitstream. The METS metadata file must be inside the "METADATA" bundle and named METS.xml. If this option is set to "true" and the bitstream is present then it is made available to the theme for display.

Property:

xmlui.google.analytics.key

Example Value:

xmlui.google.analytics.key = UA-XXXXXX-X

Informational Note:

If you would like to use Google Analytics to track general website statistics then use the following parameter to provide your analytics key. First sign up for an account at http://analytics.google.com, then create an entry for your repositories website. Google Analytics will give you a snippet of javascript code to place on your site, inside that snip it is your Google Analytics key usually found in the line: _uacct = "UA-XXXXXXX-X" Take this key (just the UA-XXXXXX-X part) and place it here in this parameter.

Property:

xmlui.controlpanel.activity.max

Example Value:

xmlui.controlpanel.activity.max = 250

Informational Note:

Assign how many page views will be recorded and displayed in the control panel's activity viewer. The activity tab allows an administrator to debug problems in a running DSpace by understanding who and how their dspace is currently being used. The default value is 250.

Property:

xmlui.controlpanel.activity.ipheader

Example Value:

xmlui.controlpanel.activity.ipheader = X-Forward-For

Informational Note:

Determine where the control panel's activity viewer receives an events IP address from. If your DSpace is in a load balanced environment or otherwise behind a context-switch then you will need to set the parameter to the HTTP parameter that records the original IP address.

...

For AIX, Sun support has the following: "JAI has native acceleration for the above but it also works in pure Java mode. So as long as you have an appropriate JDK for AIX (1.3 or later, I believe), you should be able to use it. You can download any of them, extract just the jars, and put those in your $CLASSPATH."

Download the jai_imageio library version 1.0_01 or 1.1 found at: https://jai-imageio.dev.java.net/binary-builds.html#Stable_builds .

For these filters you do NOT have to worry about the native code, just the JAR, so choose a download for any platform.

Code Block
curl -O http://download.java.net/media/jai-imageio/builds/release/1.1/jai_imageio-1_1-lib-linux-i586.tar.gz
tar xzf jai_imageio-1_1-lib-linux-i586.tar.gz
Code Block
curl -O http://download.java.net/media/jai-imageio/builds/release/1._1_2_01/jai_imageio-1_1_2_01-lib-linux-i586.tar.gz
tar xzf jai_imageio-1_1_2_01-lib-linux-i586.tar.gz
 

The preceding example leaves the JAR in jai_imageio-1_1/lib/jai_imageio.jar . Now install it in your local Maven repository, e.g.: (changing the path after file= if necessary)

Code Block
mvn install:install-file                       \
          -Dfile=jai_imageio-1_1/lib/jai_imageio.jar  \
          -DgroupId=com.sun.media                     \
          -DartifactId=jai_imageio                    \
          -Dversion=1.0_01                            \
          -Dpackaging=jar                             \
          -DgeneratePom=true

You may have to repeat this procedure for the jai_core.jar library, as well, if it is not available in any of the public Maven repositories. Once acquired, this command installs it locally: e.g.: (changing the path after file= if necessary)

Code Block
mvn install:install-file -Dfile=jai_core-1.1.2_01/lib/jai_core.jar  \
    -DgroupId=javax.media -DartifactId=jai_core -Dversion=1.1.2_01 -Dpackaging=jar -DgeneratePom=true

...