Page History
Info |
---|
In the notes below |
Upgrade Steps
The changes in DSpace 1.5 are significant and wide spread involving database schema upgrades, code restructuring, completely new user and programmatic interfaces, and new build system.
- Backup your DSpace First and foremost, make a complete backup of your system, including:
- A snapshot of the database
- The asset store ([dspace]/assetstore by default)
- Your configuration files and customizations to DSpace
- Your statistics scripts ([dspace]/bin/stat*) which contain customizable dates
- Download DSpace 1.5.x Get the new DSpace 1.5 source code either as a download from SourceForge or check it out directly from the SVN code repository. If you downloaded DSpace do not unpack it on top of your existing installation.
- Build DSpace The build process has radically changed for DSpace 1.5. With this new release the build system has moved to a maven-based system enabling the various projects (JSPUI, XMLUI, OAI, and Core API) into separate projects. See the Installation section for more information on building DSpace using the new maven-based build system. Run the following commands to compile DSpace.
You will find the result in [dspace-source]/dspace/target/dspace-1.5-build.dir/; inside this directory is the compiled binary distribution of DSpace.Code Block cd [dspace-source]/dspace/; mvn package
- Stop Tomcat Take down your servlet container, for Tomcat use the bin/shutdown.sh script.
- Update dspace.cfg Several new parameters need to be added to your [dspace]/config/dspace.cfg. While it is advisable to start with a fresh DSpace 1.5 _dspace.cfg configuration file_ here are the minimum set of parameters that need to be added to an old DSpace 1.4.2 configuration.
Code Block #### Stackable Authentication Methods ##### # # Stack of authentication methods # (See org.dspace.authenticate.AuthenticationManager) # Note when upgrading you should remove the parameter: # plugin.sequence.org.dspace.eperson.AuthenticationMethod plugin.sequence.org.dspace.authenticate.AuthenticationMethod = \ org.dspace.authenticate.PasswordAuthentication ###### JSPUI item style plugin ##### # # Specify which strategy use for select the style for an item plugin.single.org.dspace.app.webui.util.StyleSelection = \ org.dspace.app.webui.util.CollectionStyleSelection ###### Browse Configuration ###### # # The following configuration will mimic the previous # behavior exhibited by DSpace 1.4.2. For alternative # configurations see the manual. # Browse indexes webui.browse.index.1 = dateissued:item:dateissued webui.browse.index.2 = author:metadata:dc.contributor.*:text webui.browse.index.3 = title:item:title webui.browse.index.4 = subject:metadata:dc.subject.*:text # Sorting options webui.itemlist.sort-option.1 = title:dc.title:title webui.itemlist.sort-option.2 = dateissued:dc.date.issued:date webui.itemlist.sort-option.3 = dateaccessioned:dc.date.accessioned:date # Recent submissions recent.submissions.count = 5 # Itemmapper browse index itemmap.author.index = author # Recent submission processor plugins plugin.sequence.org.dspace.plugin.CommunityHomeProcessor = \ org.dspace.app.webui.components.RecentCommunitySubmissions plugin.sequence.org.dspace.plugin.CollectionHomeProcessor = \ org.dspace.app.webui.components.RecentCollectionSubmissions #### Content Inline Disposition Threshold #### # # Set the max size of a bitstream that can be served inline # Use -1 to force all bitstream to be served inline # webui.content_disposition_threshold = -1 webui.content_disposition_threshold = 8388608 #### Event System Configuration #### # # default synchronous dispatcher (same behavior as traditional DSpace) event.dispatcher.default.class = org.dspace.event.BasicDispatcher event.dispatcher.default.consumers = search, browse, eperson # consumer to maintain the search index event.consumer.search.class = org.dspace.search.SearchConsumer event.consumer.search.filters = Item|Collection|Community|Bundle+Create|Modify|Modify_Metadata|Delete: Bundle+Add|Remove # consumer to maintain the browse index event.consumer.browse.class = org.dspace.browse.BrowseConsumer event.consumer.browse.filters = Item+Create|Modify|Modify_Metadata:Collection+Add|Remove # consumer related to EPerson changes event.consumer.eperson.class = org.dspace.eperson.EPersonConsumer event.consumer.eperson.filters = EPerson+Create
- Add 'xmlui.xconf' Manakin configuration The new Manakin user interface available with DSpace 1.5 requires an extra configuration file that you will need to manually copy it over to your configuration directory.
Code Block cp [dspace-source]/dspace/config/xmlui.xconf [dspace]/config/xmlui.xconf
- Add 'item-submission.xml' and 'item-submission.dtd' configurable submission configuration The new configurable submission system that enables an administrator to re-arrange, or add/remove item submission steps requires this configuration file. You need to manually copy it over to your configuration directory.
Code Block cp [dspace-source]/dspace/config/item-submission.xml [dspace]/config/item-submission.xml cp [dspace-source]/dspace/config/item-submission.dtd [dspace]/config/item-submission.dtd
- Add new 'input-forms.xml' and 'input-forms.dtd' configurable submission configuration The input-forms.xml now has an included dtd reference to support validation. You'll need to merge in your changes to both file/and or copy them into place.
Code Block cp [dspace-source]/dspace/config/input-forms.xml [dspace]/config/input-forms.xml cp [dspace-source]/dspace/config/input-forms.dtd [dspace]/config/inputforms.dtd
- Add 'sword-swap-ingest.xsl' and 'xhtml-head-item.properties' crosswalk files New crosswalk files are required to support SWORD and the inclusion of metadata into the head of items.
Code Block cp [dspace-source]/dspace/config/crosswalks/sword-swap-ingest.xsl [dspace]/config/crosswalks/sword-swap-ingest.xsl cp [dspace-source]/dspace/config/crosswalks/xhtml-head-item.properties [dspace]/config/crosswalks/xhtml-head-item.properties
- Add 'registration_notify' email files A new configuration option (registration.notify = you@your-email.com) can be set to send a notification email whenever a new user registers to use your DSpace. The email template for this email needs to be copied.
Code Block cp [dspace-source]/dspace/config/emails/registration_notify [dspace]/config/emails/registration_notify
- Update the database The database schema needs updating. SQL files contain the relevant updates are provided, note if you have made any local customizations to the database schema you should consult these updates and make sure they will work for you.
- For PostgreSQL psql -U [dspace-user] -f [dspace-source]/dspace/etc/database_schema_14-15.sql [database-name]
- For Oracle [dspace-source]/dspace/etc/oracle/database_schema_142-15.sql contains the commands necessary to upgrade your database schema on oracle.
- Apply any customizations If you have made any local customizations to your DSpace installation they will need to be migrated over to the new DSpace. Commonly these modifications are made to "JSP" pages located inside the [dspace 1.4.2]/jsp/local directory. These should be moved [dspace-source]/dspace/modules/jspui/src/main/webapp/ in the new build structure. See Customizing the JSP Pages for more information.
- Update DSpace Update the DSpace installed directory with new code and libraries. Inside the [dspace-source]/dspace/target/dspace-1.5-build.dir/ directory run:
Code Block cd [dspace-source]/dspace/target/dspace-1.5-build.dir/; ant -Dconfig=[dspace]/config/dspace.cfg update
- Update the Metadata Registry New Metadata Registry updates are required to support SWORD.
Code Block cp [dspace-source]/dspace/config/registries/sword-metadata.xml [dspace]/config/registries/sword-metadata.xml; [dspace]/bin/dsrun org.dspace.administer.MetadataImporter -f [dspace]/config/registries/sword-metadata.xml
- Rebuild browse and search indexes One of the major new features of DSpace 1.5 is the browse system which necessitates that the indexes be recreated. To do this run the following command from your DSpace installed directory:
Code Block [dspace]/bin/index-init
- Update statistics scripts The statistics scripts have been rewritten for DSpace 1.5. Prior to 1.5 they were written in Perl, but have been rewritten in Java to avoid having to install Perl. First, make a note of the dates you have specified in your statistics scripts for the statistics to run from. You will find these in [dspace]/bin/stat-initial, as $start_year and $start_month. Note down these values.Copy the new stats scripts:
Then edit your statistics configuration file with the start details. Add the following to [dspace]/conf/dstat.cfg# the year and month to start creating reports from# - year as four digits (e.g. 2005)# - month as a number (e.g. January is 1, December is 12)start.year = 2005start.month = 1 Replace '2005' and '1' as with the values you noted down. dstat.cfg also used to contain the hostname and service name as displayed at the top of the statistics. These values are now taken from dspace.cfg so you can remove host.name and host.url from dstat.cfg if you wish. The values now used are dspace.hostname and dspace.name from dspace.cfgCode Block cp [dspace-source]/dspace/bin/stat* [dspace]/bin/
- Deploy web applications Copy the web applications files from your [dspace]/webapps directory to the subdirectory of your servlet container (e.g. Tomcat):
Code Block cp [dspace]/webapps/* [tomcat]/webapps/
- Restart Tomcat Restart your servlet container, for Tomcat use the bin/startup.sh script.
Overview
Content Tools