Page History
...
Table of Contents | ||||||
---|---|---|---|---|---|---|
|
General Configuration
In the following sections you will learn about the different configuration files that you will need to edit so that you may make your DSpace installation work.
...
To get started, simply create your own [dspace-source]/dspace/config/local.cfg
based on the example, e.g.
Code Block | ||
---|---|---|
| ||
cd [dspace-source]/dspace/config/ cp local.cfg.EXAMPLE local.cfg |
...
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: |
|
Example Value: |
|
Informational Note: | The address on which your outgoing SMTP email server can be reached. |
Property: |
|
Example Value: |
|
Informational Note: | SMTP mail server authentication username, if required. This property is optional. |
Property: |
|
Example Value: |
|
Informational Note: | SMTP mail server authentication password, if required. This property is optional |
. | |||
Property: |
| ||
Example Value: |
| ||
Informational Note: | The port on which your SMTP mail server can be reached. By default, port 25 is used, port 587 is commonly used for TLS connections. Change this setting if your SMTP mailserver is running on another port. This property is optional. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | The "From" address for email. Change the 'myu.edu' to the site's host name. | ||
Property: |
| ||
Example Value: |
| ||
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: |
| ||
Example Value: |
| ||
Informational Note: | Email address of the general site administrator (Webmaster) | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Enter the recipient for server errors and alerts. This property is optional. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Enter the recipient that will be notified when a new user registers on DSpace. This property is optional. | ||
Property: |
| ||
Example Value: |
| ||
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: |
| ||
Example Value: |
| ||
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: |
| ||
Example Value: |
| ||
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: |
| ||
Example Value: |
| ||
Informational Note: | An option is added to disable the mailserver. By default, this property is set to ' | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Specifies the name of a javax.mail.Session object stored in JNDI under | ||
Property: |
| ||
Example Value: |
| ||
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
...
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
Info |
---|
Beginning with DSpace 6, your file storage location (aka bitstore) is now defined in the |
DSpace supports multiple options for storing your repository bitstreams (uploaded files). The files are not stored in the database, instead they are provided via a configured "assetstore" or "bitstore".
By default, the assetstore is simply a directory on your server ([dspace]/assetstore/
) under which bitstreams (files) are stored by DSpace.
At this time, DSpace supports two primary locations for storing your files:
- Your local filesystem (used by default), specifically under the
[dspace]/assetstore/
directory - OR, Amazon S3 (requires your own Amazon S3 account)
More information on configuring or customizing the storage location of your files can be found in the Storage Layer documentation.
Logging Configuration
Format of E-mail Messages
The files in dspace/config/emails
are templates with a specific structure.
- A line beginning with "#" is a comment and will not be included in the message.
- A line beginning with "Subject: " will set the
Subject:
header of the message and will not be included in the body. - A line beginning with "Charset: " will set the character set in which the subject and single message bodypart are assumed to be encoded, will be used as the value of the
charset
parameter of theContent-Encoding
header for the message, and will not be included in the body. If the message has multiple bodyparts (i.e. attachments are included) then all are assumed to be encoded in US-ASCII and the "Charset: " line has no effect on them (but still affects the subject). A number enclosed in braces, such as
{2}
, anywhere in a non-comment line, will be replaced with the corresponding parameter which was supplied to the message when the message formatter was called. Parameter numbers are 0-based. Refer to the comments in the template or to the code which uses it for the meaning of each parameter.
Using an external mail server
If you want to use an external mail server setting the value of mail.server
to the domain name is enough if authentication is not required. Most external SMTP mail servers will however require authentication for obvious reasons. To enable TLS encryption you will typically have to set the mail.server.port
to the secure default 587 and for the mail.server.username
and mail.server.password
to be set. In addition you will need to enable TLS by setting the following extra properties:
Code Block |
---|
mail.extraproperties = mail.smtp.auth=true, \
mail.smtp.starttls.enable=true |
Note that as of January 2020 Microsoft has started to remove support for Transport Layer Security (TLS) versions 1.0 and 1.1 in Office 365 and Office 365 GCC (see more information here). This necessitates using TLS 1.2 then. Some users have reported being able to use the following configuration successfully (see discussion):
Code Block |
---|
mail.extraproperties = mail.smtp.socketFactory.port=587, \
mail.smtp.starttls.enable=true, \
mail.smtp.starttls.required=true, \
mail.smtp.ssl.protocols=TLSv1.2
|
File Storage
Info |
---|
Beginning with DSpace 6, your file storage location (aka bitstore) is now defined in the |
DSpace supports multiple options for storing your repository bitstreams (uploaded files). The files are not stored in the database, instead they are provided via a configured "assetstore" or "bitstore".
By default, the assetstore is simply a directory on your server ([dspace]/assetstore/
) under which bitstreams (files) are stored by DSpace.
At this time, DSpace supports two primary locations for storing your files:
- Your local filesystem (used by default), specifically under the
[dspace]/assetstore/
directory - OR, Amazon S3 (requires your own Amazon S3 account)
More information on configuring or customizing the storage location of your files can be found in the Storage Layer documentation.
Logging Configuration
Property: |
| ||
Example Value: |
| ||
Informational Note: | This is where your logging configuration file is located. You may override the default log4j configuration by providing your own. Existing alternatives are:
| ||
Property: |
| ||
Example value: |
| ||
Informational Note: | This is where to put the logs. (This is used for initial configuration only) | ||
Property: | loglevel.dspace (defined in log4j.properties) | ||
Example value: | loglevel.dspace = INFO | ||
Informational Note: | Log level for all DSpace-specific code (org.dspace.* packages). By default, DSpace only provides general INFO logs (in order to keep log | ||
Property: |
| ||
Example Value: |
| Informational Note: |
Code Block |
---|
log.init.config = ${dspace.dir}/config/log4j.properties
log.init.config = ${dspace.dir}/config/log4j-console.properties |
Property:
log.dir
Example value:
log.dir = ${dspace.dir}/log
Informational Note:
This is where to put the logs. (This is used for initial configuration only)
Property:
loglevel.dspace (defined in log4j.properties)
loglevel.dspace = INFO
Log level for all DSpace-specific code (org.dspace.* packages). By default, DSpace only provides general INFO logs (in order to keep log sizes reasonable). As necessary, you can temporarily change this setting to any of the following (ordered for most information to least): DEBUG, INFO, WARN, ERROR, FATAL
Please be aware we do not recommend running at the DEBUG level in Production for significant periods of time, as it will cause the logs to be extremely large in size.
Property:
loglevel.other (defined in log4j.properties)
loglevel.other = INFO
Log level for other third-party tools/APIs used by DSpace (non-DSpace specific code). By default, DSpace only provides general INFO logs (in order to keep log sizes reasonable). As necessary, you can temporarily change this setting to any of the following (ordered for most information to least): DEBUG, INFO, WARN, ERROR, FATAL
Please be aware we do not recommend running at the DEBUG level in Production for significant periods of time, as it will cause the logs to be extremely large in size.
...
Property: | plugin.classpath |
---|---|
Example Value: | /opt/dspace/plugins/aPlugin.jar:/opt/dspace/moreplugins |
Informational Note: | Search path for third-party plugin classes. This is a colon-separated list of directories and JAR files, each of which will be searched for plugin classes after looking in all the places where DSpace classes are found. In this way you can designate one or more locations for plugin files which will not be affected by DSpace upgrades. |
Configuring the Search Engine
...
Community Administration: Subcommunities and Collections | |||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to create subcommunities or collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to delete subcommunities or collections. | ||
Community Administration: Policies and The group of administrators | |||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to administrate the community policies. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to edit the group of community admins. | ||
Community Administration: Collections in the above Community |
| ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to administrate the policies for underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to administrate the item template for underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to administrate the group of submitters for underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to administrate the workflows for underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
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: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to delete items in underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to withdraw items in underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to reinstate items in underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
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: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to create additional bitstreams in items in underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to delete bitstreams from items in underlying collections. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Authorization for a delegated community administrator to administer licenses from items in underlying collections. | ||
Community Administration: |
| ||
Collection Administration: |
| ||
Collection Administration: |
| ||
Item Administration. |
| ||
Item Administration: |
|
...
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 to show a progress bar during the file upload.
Property: |
|
Example Value: |
|
Informational Note: | Controls whether or not the UI blocks a submission which is marked as a thesis. |
Property: |
|
Example Value: |
|
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: |
|
Example Value: | webui.submit.upload.html5 = true |
Informational Note: | If the browser supports it, JSPUI uses html5 File API to enhance file upload. If this property is set to false the enhanced file upload is not used even if the browser would support it. |
Property: |
|
Example Value: | webui.submit.upload.progressbar = true |
Informational Note: | Whether to 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 yet provide a progress bar indicator for file upload. |
...
DSpace 4.0 introduced integration with the Sherpa/RoMEO Publishers Policy Database in order to allow displaying the publisher policy in the submission upload step. The submission step interface is available in JSPUI (since DSpace 4.0) and in XMLUI (since DSpace 5.0) and enabled by default, however to use it in production (over 500 requests per day), you must register for a free API key (see below for details).
Property: | webui.submission.sherparomeo-policy-enabled |
Example Value: | webui.submission.sherparomeo-policy-enabled = true |
Informational Note: | Controls whether or not the UI 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: | 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 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)
Warning | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
Since DSpace 5.6 Creative Commons licensing is captured in exactly the same way in each UI and some fix has been introduced. For JSPUI users this mean:
For XMLUI users:
|
...
The following configurations (in dspace.cfg) relate to the Creative Commons license process:
...
Property: |
|
Example Value: |
|
Informational Note: |
Tag cloud
Apart from the single (type=metadata) and full (type=item) browse pages, tag cloud is a new way to display the unique values of a metadata field.
...
Property: |
| ||
Example Value: |
| ||
Informational Note: |
| ||
Property: |
| ||
Example Value: |
| ||
Property: |
| ||
Example Value: |
The Linked Data Service at the Library of Congress might be a better, and more stable, option: http://id.loc.gov/authorities/names.html | ||
Informational Note: | Location (URL) of the Library of Congress Name Service | ||
Property: |
| ||
Informational Note: | Please 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: |
| ||
Example Value: | orcid.api.url = https://pub.orcid.org/v2.1 | ||
Informational Note: | Location (URL) of the ORCID v2 Public API | ||
Property: |
| ||
Example Value: |
| ||
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 | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | This property sets the number of selectable choices in the Choices lookup popup |
...
Property: |
| ||
Example Value: |
| ||
Informational Note: | This is used to customize the DC metadata fields that display in the item display (the brief display) when pulling up a record. The format is: | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | When using "resolver" in webui.itemdisplay to render identifiers as resolvable links, the base URL is taken from <code>webui.resolver.<n>.baseurl<code> where <code>webui.resolver.<n>.baseurl<code> matches the urn specified in the metadata value. The value is appended to the "baseurl" as is, so the baseurl needs to end with the forward slash almost in any case. If no urn is specified in the value it will be displayed as simple text. For the doi and hdl urn defaults values are provided, respectively http://dc.doi.org and http://hdl.handle.net are used. If a metadata value with style "doi", "handle" or "resolver" matches a URL already, it is simply rendered as a link with no other manipulation. | ||
Property: | webui.preferred.identifier | ||
Example Value: | webui.preferred.identifier = handle | ||
Informational Note: | At the top of the item view a persistent identifier is shown to be used to refer to this item. If you use Item Level Versioning and DSpace is configured to, it shows a version history. Per default DSpace uses handle as preferred identifier. If you've configured DSpace to register DOIs you can decide to use DOIs instead of handles at the top of the item view and within the version history. Set the property webui.preferred.identifier = doi to do so. | ||
Property: | webui.identifier.strip-prefixes | ||
Example Value: | webui.identifier.strip-prefixes = true | ||
Informational Note: | In the version history Persistent Identifiers can be shown with or without their prefixes, e.g. a handle can be shown as handle:10673/6 or just as 10673/6. A DOI can be can be shown as 10.5072/example-doi-123 or as doi:105072/example-doi-123. This property controlls whether the handles are stripped (default) or not. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Specify which strategy to use for select the style for an item. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Specify which collections use which views by Handle. | ||
Property: |
| ||
Example Value: | webui.itemdisplay.label.restricted.bitstreams = true | ||
Informational Note: | Should access restricted bitstreams be labeled as such? If set true, all bitstreams which cannot currently not be read by an anonymous user are labeled as being access restricted. If a resource policy to allow read access for anonymous users with an unreached start date exists, this date is shown as well. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Specify which metadata to use as name of the style | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Customize the DC fields to use in the item listing page. Elements will be displayed left to right in the order they are specified here. The form is <schema prefix>.<element>[.<qualifier> | .*][(date)], ... | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | You can customize the width of each column with the following line--you can have numbers (pixels) or percentages. For the 'thumbnail' column, a setting of '*' will use the max width specified for browse thumbnails (cf. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | You can override the DC fields used on the listing page for a given browse index and/or sort option. As a sort option or index may be defined on a field that isn't normally included in the list, this allows you to display the fields that have been indexed/sorted on. There are a number of forms the configuration can take, and the order in which they are listed below is the priority in which they will be used (so a combination of an index name and sort name will take precedence over just the browse name).In the last case, a sort option name will always take precedence over a browse index name. Note also, that for any additional columns you list, you will need to ensure there is an itemlist.<field name> entry in the messages file. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | This would display the date of the accession in place of the issue date whenever the dateaccessioned browsed index or sort option is selected. Just like webui.itemlist.columns, you will need to include a 'thumbnail' entry to display the thumbnails in the item list. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | As in the aforementioned property key, you can customize the width of the columns for each configured column list, substituting ".widths" for ".columns" in the property name. See the setting for webui.itemlist.widths for more information. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | You can also set the overall size of the item list table with the following setting. It can lead to faster table rendering when used with the column widths above, but not generally recommended. | ||
Property: |
| ||
Example Value: |
| ||
Informational Note: | Enable or disable session invalidation upon login or logout. This feature is enabled by default to help prevent session hijacking but may cause problems for shibboleth, etc. If omitted, the default value is "true". [Only used for JSPUI authentication]. | ||
| |||
Example Value: | jspui.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. |
JSPUI Item Mapper
Because the item mapper requires a primitive implementation of the browse system to be present, we simply need to tell that system which of our indexes defines the author browse (or equivalent) so that the mapper can list authors' items for mapping
...
Property: |
|
Example Value: |
|
| |
Informational Note: | SFX query is appended to this URL. If this property is commented out or omitted, SFX support is switched off. |
...
Code Block | ||
---|---|---|
| ||
#Allow the reviewers to add/edit/remove files from the submission #When changing this property you might want to alert submitters in the license that reviewers can alter their files workflow.reviewer.file-edit=false |
...
Both workflow systems send notifications on new Items waiting to be reviewed to all EPersons that may resolve those. Tasks can be taken to avoid that two EPersons work on the same task at the same time without knowing from each other. When a EPerson returns a task to the pool without resolving it (by accepting or rejecting the submission), another E-Mail is sent. In case you only want to be notified of completely new tasks entering a step of the workflow system, you may switch off notifications on tasks returned to the pool by setting workflow.notify.returend.tasks to false in config/modules/workflow.cfg as shown below:
...
JSPUI: Per item visual indicators for browse and search results
Visual indicators per item allow users to mark items in browse and search results. This could be useful in many scenarios, some of them follow:
...
- Multiple marks can be added per item (i.e. mark the type of the item and the availability of the bitstreams)
- Easy configuration of the strategy of what mark to display in every item
- Marks based on images or a generic class (i.e. a glyphicon icon for bootstrap)
- Display tooltip when hovering the mark + localization of the tooltip
- Easy addtion of new strategies for any type of mark the user desires
- Add css styles for the user to configure the position of the marks in the list row
...
Some theory:
A mark is an instance of the class: org.dspace.app.itemmarking.ItemMarkingInfo.
...
Moreover, this strategy add a link in the mark (in case there are bitstreams in the item) to the first bitstream of the item
...
How to:
In order to enable a mark for the result or browse list you need to change the option:
...
Code Block | ||
---|---|---|
| ||
<bean class="org.dspace.app.itemmarking.ItemMarkingInfo" id="type1MarkingInfo"> <property name="classInfo" value="glyphicon glyphicon-picture"/> <property name="tooltip" value="itemlist.mark.type1MarkingInfo"/> </bean> <bean class="org.dspace.app.itemmarking.ItemMarkingInfo" id="type2MarkingInfo"> <property name="imageName" value="image/type2.png"/> <property name="tooltip" value="itemlist.mark.type2MarkingInfotype1MarkingInfo"/> </bean> |
Tooltip property contains the localized key to display.
Keep in mind that the Strategy that you may write can have its own logic on how to create the ItemMarkingInfo per item. The only requirement of the feature is to add in the Spring configuration file the initial beans one for each mark you have declared in the dspace.cfg file.
Styling:
The title for the column of each mark is titled based on the localized key “itemlist.mark_[value]”, so you just need to add the specific keys in the messages.propertied files.
Moreover, the following CSS styles are applied to the various aspects of the mark:
- mark_[value]_th: a style applied to the column header
- mark_[value]_tr: a style applied to the each row
Add these classes to the css file and apply any style you like (like centering the text or the image)
Recognizing Web Spiders (Bots, Crawlers, etc.)
DSpace can often recognize that a given access request comes from a web spider that is indexing your repository. These accesses can be flagged for separate treatment (perhaps exclusion) in usage statistics. This requires patterns to match against incoming requests. These patterns exist in files that you will find in config/spiders
.
In the spiders
directory itself, you will find a number of files provided by iplists.com. These files contain network address patterns which have been discovered to identify a number of known indexing services and other spiders. You can add your own files here if you wish to exclude more addresses that you know of. You will need to include your files' names in the list configured in config/modules/solr-statistics.cfg
. The iplists.com-*.txt
files can be updated using a tool provided by DSpace. See SOLR Statistics for details.
In the spiders
directory you will also find two subdirectories. agents
contains files filled with regular expressions, one per line. An incoming request's User-Agent
header is tested with each expression found in any of these files until an expression matches. If there is a match, the request is marked as being from a spider, otherwise not. domains
similarly contains files filled with regular expressions which are used to test the domain name from which the request comes. You may add your own files of regular expressions to either directory if you wish to test requests with patterns of your own devising.
webui.itemdisplay.label.restricted.bitstreams
Many configuration names/keys have changed!
If you are upgrading from an earlier version of DSpace, you will need to be aware that many configuration names/keys have changed. Because Apache Commons Configuration allows for auto-overriding of configurations, all configuration names/keys in different *.cfg
files MUST be uniquely named (otherwise accidental, unintended overriding may occur).
In order to compensate for this, all modules/*.cfg
files had their configurations renamed to be prepended with the module name. As a basic example, all the configuration settings within the modules/oai.cfg
configuration now start with "oai.
".
Additionally, while the local.cfg
may look similar to the old build.properties
, many of its configurations have slightly different names. So, simply copying your build.properties into a local.cfg will NOT work.
This means that DSpace 5.x (or below) configurations are NOT compatible with the Enhanced Configuration Scheme. While you obviously can use your old configurations as a reference, you will need to start with fresh copy of all configuration files, and reapply any necessary configuration changes (this has always been the recommended procedure). However, as you'll see in the next section, you'll likely want to do that anyways in order to take full advantage of the new local.cfg
file.
<bean class="org.dspace.app.itemmarking.ItemMarkingInfo" id="type2MarkingInfo">
<property name="imageName" value="image/type2.png"/>
<property name="tooltip" value="itemlist.mark.type2MarkingInfo"/>
</bean> |
Tooltip property contains the localized key to display.
Keep in mind that the Strategy that you may write can have its own logic on how to create the ItemMarkingInfo per item. The only requirement of the feature is to add in the Spring configuration file the initial beans one for each mark you have declared in the dspace.cfg file.
Styling:
The title for the column of each mark is titled based on the localized key “itemlist.mark_[value]”, so you just need to add the specific keys in the messages.propertied files.
Moreover, the following CSS styles are applied to the various aspects of the mark:
- mark_[value]_th: a style applied to the column header
- mark_[value]_tr: a style applied to the each row
Add these classes to the css file and apply any style you like (like centering the text or the image)
Recognizing Web Spiders (Bots, Crawlers, etc.)
DSpace can often recognize that a given access request comes from a web spider that is indexing your repository. These accesses can be flagged for separate treatment (perhaps exclusion) in usage statistics. This requires patterns to match against incoming requests. These patterns exist in files that you will find in config/spiders
.
In the spiders
directory itself, you will find a number of files provided by iplists.com. These files contain network address patterns which have been discovered to identify a number of known indexing services and other spiders. You can add your own files here if you wish to exclude more addresses that you know of. You will need to include your files' names in the list configured in config/modules/solr-statistics.cfg
. The iplists.com-*.txt
files can be updated using a tool provided by DSpace. See SOLR Statistics for details.
In the spiders
directory you will also find two subdirectories. agents
contains files filled with regular expressions, one per line. An incoming request's User-Agent
header is tested with each expression found in any of these files until an expression matches. If there is a match, the request is marked as being from a spider, otherwise not. domains
similarly contains files filled with regular expressions which are used to test the domain name from which the request comes. You may add your own files of regular expressions to either directory if you wish to test requests with patterns of your own devising.[dspace]/config/config-definition.xml
Command-line Access to Configuration Properties
...
name | argument | meaning |
---|---|---|
--property -p | name | the name of the desired configuration property. This option is required. |
--module -m | name | the name of the module in which the property is found. If omitted, the value of --property is the entire name. If used, the name will be composed as module.property. For example, "-m dspace -p url " will look up the value of dspace.url . |
--raw -r | if used, this prevents the substitution of other property values into the value of the requested property. It is also useful to see all of the propery values when a specific property has an array of values (i.e. the configuration supports specifying multiple values). Otherwise, by default , dsprop may only return the first value in the array. | |
--help -h -? | Display help similar to this table. |
...