qspace_customization

Document Sample
qspace_customization Powered By Docstoc
					                Queen’s University
              QSpace Customizations
          Standard Operating Procedures




Subject:                QSpace customizations
Number:                 Version 1.00
Issued by:              Seamus Ryan
Date                    16 Mar 05
Maximum Review Period   1 year
History
                                  Revision Chart
      Version     Author(s)        Description of Revision            Date
                                                                   Completed
      1.00      Seamus Ryan   Initial daft                        16 Mar 05
      1.01      Seamus Ryan   Incorporated ITS-SONP suggestions   19 Apr 05




QSpace Customizations SOP                                                      1
                                                    Table of Contents

1.0     Forward ............................................................................................................................... 4
2.0     Conventions Used in This Document ................................................................................. 5
3.0     Definitions........................................................................................................................... 6
4.0     Machine Name Alias........................................................................................................... 7
5.0     Email Aliases ...................................................................................................................... 7
6.0     Email templates................................................................................................................... 8
   6.1      Convert “DSpace” text strings to “QSpace” in Templates ............................................. 8
   6.2      Change Contact Information in Templates ..................................................................... 8
   6.3      Restart Tomcat to Load Config Changes ........................................................................ 8
7.0     License Agreement for QSpace .......................................................................................... 9
   7.1      default.license ................................................................................................................. 9
   7.2      qlicense.jsp ...................................................................................................................... 9
8.0     User Documentation ......................................................................................................... 10
   8.1      Popup Help.................................................................................................................... 11
      8.1.1      Text String Conversion DSpace => QSpace......................................................... 11
      8.1.2      Include Modified Functionality in Popup Help .................................................... 11
      8.1.3      Include New Images in Popup Help ..................................................................... 11
   8.2      User Guidelines............................................................................................................. 12
      8.2.1      About QSpace JSP ................................................................................................ 13
      8.2.2      Guideline JSPs ...................................................................................................... 14
      8.2.3      JavaScript “includes” for Guideline JSPs ............................................................. 15
      8.2.4      JSP Template for Guideline JSPs ......................................................................... 15
   8.3      Rebuild QSpace to Effect Document Changes ............................................................. 16
9.0     User Interface: “Look and Feel” ....................................................................................... 17
   9.1      Text String Conversion DSpace => QSpace................................................................. 18
   9.2      Style sheet ..................................................................................................................... 19
      9.2.1      Fonts...................................................................................................................... 19
      9.2.2      Colours .................................................................................................................. 19
   9.3      Layout ........................................................................................................................... 20
      9.3.1      Body ...................................................................................................................... 20
      9.3.2      Right Sidebar (body) ............................................................................................. 22
      9.3.3      Header (header-default.jsp)................................................................................... 23
      9.3.4      Footer (footer-default.jsp) ..................................................................................... 24
      9.3.5      Navigation bar (navbar-default.jsp) ...................................................................... 25
      9.3.6      Breadcrumb Navigation (location-bar.jsp) ........................................................... 26
   9.4      Favicon.......................................................................................................................... 27
   9.5      DSpace JSP Tags .......................................................................................................... 29
10.0 Functionality ..................................................................................................................... 30
   10.1 About QSpace ............................................................................................................... 31
   10.2 How to Submit .............................................................................................................. 32
   10.3 Browse .......................................................................................................................... 33
   10.4 My Account................................................................................................................... 34
   10.5 Search............................................................................................................................ 35


QSpace Customizations SOP                                                                                                                     2
    10.5.1   Simple Search ....................................................................................................... 35
    10.5.2   Advanced Search................................................................................................... 36
    10.5.3   Search Tips............................................................................................................ 37
    10.5.4   Boolean Override .................................................................................................. 38
11.0 Accessibility...................................................................................................................... 39
12.0 Site Administrator Guide .................................................................................................. 40
13.0 Patches .............................................................................................................................. 41
  13.1 Patches Applied............................................................................................................. 42
  13.2 Failed Patches Subsequently Uninstalled ..................................................................... 42
14.0 Connection Exhaustion Bug ............................................................................................. 43
  14.1 Postpone Exhaustion by Increasing System Resources ................................................ 44
    14.1.1   Tune Solaris .......................................................................................................... 44
    14.1.2   Tune PostgreSQL database ................................................................................... 44
    14.1.3   Tune QSpace ......................................................................................................... 44
  14.2 Daily Restart to Reset Database Connections............................................................... 45
  14.3 Restart after an “Internal Server Error” ........................................................................ 45
Appendix A - DSpaceToQSpace.sh.............................................................................................. 46
Appendix B - QSpace_update.sh .................................................................................................. 47
Appendix C – QSpace_connExhaustRestart.sh ............................................................................ 48
Appendix D – Excerpts dspace-web.xml ...................................................................................... 49
Appendix E – Restart Tomcat ....................................................................................................... 50




QSpace Customizations SOP                                                                                                                  3
1.0 Forward
      QSpace is a Queen’s branded instance of DSpace, an open source Institutional Repository
      (IR). DSpace is implemented as a web application that runs within an application
      container. The Queen’s instance of DSpace (QSpace) is hosted in a Jakarta Tomcat
      Servlet/JSP application container.

      This document is meant to capture the customizations applied to DSpace source and
      environment to brand it as QSpace.




QSpace Customizations SOP                                                                  4
2.0 Conventions Used in This Document
      Times New Roman – Main body of the text of this document.

      Fixed-Width Font - Examples of commands or items that you might see on the
            computer screen. For example, directory and file names as well as installation
            commands.

     Fixed-Width Bold Font - Indicate interaction between a user and the system. The
            user’s input would be shown in bold such as:
                   % su – root
                   Password:
                   #

     [Fixed-Width Italics] - Input that should be replaced by the user depending on the
            circumstance, contained within square brackets should be used. For example:

                   % find-logs-by-month [month_name]

                   Italic regular font - Filenames, paths, commands, etc. within the main
                   body of the text.

                   % - user account prompt
                   # - root user account prompt




QSpace Customizations SOP                                                                    5
3.0 Definitions
      These environmental variable definitions are presented in shell code style. They simply
      describe the full paths that should be inferred from the variables when seen in the
      following text.

      $DSPACE =                    /export/home/dspace/dspace
      $DSPACE_SRC =                /export/home/dspace/dspace_src/dspace-1.2-source
      $CATALINA_HOME =             /export/home/dspace/tomcat/jakarta-tomcat-5.0.28/




QSpace Customizations SOP                                                                       6
4.0 Machine Name Alias
      QSpace is housed on carrick.its.queensu.ca (130.15.126.69). This machine name has
      been aliased to qspace.library.queensu.ca, and appropriate routing records have been
      added to the Queen’s DNS servers.

             dspace% nslookup qspace.library

             Server: braid.QueensU.CA
             Address: 130.15.126.52

             Name:        carrick.ITS.queensu.ca
             Address:     130.15.126.69
             Aliases:     qspace.library.queensu.ca


5.0 Email Aliases
      The following email aliases are configured:

             post.queensu.ca
                 /etc/mail/aliases
                    qspace-noreply:         ryan
                    qspace-help:            ryan
                    qspace-info:            qspace

             carrick.its.queensu.ca
                /etc/mail/aliases
                   dspace-admin: ryan@post.queensu.ca

      For further details see the Email Aliases section of QSpace Installation SOP
      (D1_QSpace_Install.doc).




QSpace Customizations SOP                                                                    7
6.0 Email templates
      A number of email templates exist for system generated email. The templates are located
      in $DSPACE/config/emails/. Required changes are listed here.


      6.1    Convert “DSpace” text strings to “QSpace” in Templates

             Change “DSpace” to “QSpace” in each template:

                    dspace% cd $DSPACE/config/emails
                    dspace% perl –pi.orig –e ‘s/DSpace/QSpace/’ *



      6.2    Change Contact Information in Templates

             Change default email contact to qspace-help@post.queensu.ca.

             Change default phone contact to (613) 533-2830.


      6.3    Restart Tomcat to Load Config Changes

             As root user restart Tomcat, allowing 10-15 seconds between stop and start. See
             Appendix E – Restart Tomcat.




QSpace Customizations SOP                                                                      8
7.0 License Agreement for QSpace
      The license Agreement for QSpace is based on that used by University for their TSpace
      installation. Minor changes were made to recognize Queen’s in lieu of University of
      Toronto. The license has then been vetted with the University’s lawyer who
      recommended changing the term "submission(s)" to "work(s)".

      The final version of the license lives in two places.

            $DSPACE/ config/default.license
            $DSPACE_SRC/jsp/local/guidelines/qlicense.jsp

      Note: changes to one of the above will necessitate changes to the other.


      7.1    default.license

             Backup the default.license file supplied with DSpace source. Save a text version
             of License Agrement for QSpace to $DSPACE/ config/default.license.

             This text will be the default license a Collection will offer to its submitters. Each
             Collection can choose to override the default and supply their own license. This is
             done by editing a Collection and pasting in Collection’s proprietary license.

             After new version of default.license is copied into place it is necessary to restart
             Tomcat. As root user restart Tomcat, allowing 10-15 seconds between stop and
             start. See Appendix E – Restart Tomcat.


      7.2    qlicense.jsp

             This is a guideline or reference document that can be viewed online by users.To
             change, edit $DSPACE_SRC/jsp/local/guidelines/qlicense.jsp




QSpace Customizations SOP                                                                           9
8.0 User Documentation
      User documentation consists of two main bodies.

      First is the DSpace supplied user documentation. This is accessed from a “Help” link in
      the left hand navigation menu of the user interface (UI). Clicking on “Help” launches a
      popup browser window displaying user documentation. When logged in as site
      administrator a similar “Help” link provides access to Site Administrator Help.

      Second, user guidelines comprise a series of documents originating from University of
      Toronto’s TSpace project, supplemented with work by Sam Kalb of Queen’s University
      Library. These files are accessed from the “About QSpace” page (about.jsp).

      Important: DO NOT edit files in $DSPACE_SRC/jsp/. Instead copy a file(s) or directory
      that you wish to modify from $DSPACE_SRC/jsp/ into $DSPACE_SRC/jsp/local/ and
      edit or modify it there.

      The build process will first copy files from $DSPACE_SRC/jsp/ to the staging directory
      $DSPACE_SRC/build/jsp/. Second, working files from $DSPACE_SRC/jsp/local/ will be
      copied to $DSPACE_SRC/build/jsp/ overwriting any files with the same names.

      This way your modified files replace any originals in the build staging area, and any new
      files you have created also appear in the build staging area. The build next packages
      $DSPACE_SRC/build into an archive file named “dspace.war”.




QSpace Customizations SOP                                                                    10
      8.1   Popup Help

            The popup help files are live in $DSPACE_SRC/jsp/help/. Copy the contents of
            this directory to $DSPACE_SRC/jsp/local/help/ and modify as necessary from
            this directory.


            8.1.1 Text String Conversion DSpace => QSpace

                   Convert all instances of text string DSpace to QSpace. Use the script
                   supplied at “Appendix-A DSpaceToQSpace.sh” to make the desired text
                   string conversion. The script can be used as is, or each line of the script
                   can be run line by line, ensuring the desired changes.

            8.1.2 Include Modified Functionality in Popup Help

                   The Popup help supplied by DSpace matches the organizational /
                   navigational structure of the default user interface (UI).

                   The QSpace UI provides a different organizational / navigational structure.
                   The popup help has been modified to match this structure.


            8.1.3 Include New Images in Popup Help

                   Changes to the QSpace UI necessitated providing matching screen shots in
                   the popup help.




QSpace Customizations SOP                                                                    11
      8.2   User Guidelines

            User guidelines were provided by the QSpace team. Some of these documents are
            rewordings of documents from University of Toronto TSpace, and others are
            documents authored by Sam Kalb, Queen’s University Library.

            These documents can be found in $DSPACE_SRC/ jsp/local/guidelines/:

                   DCQualifiers.jsp
                   about_QS.jsp
                   content.jsp
                   format.jsp
                   guidelines.jsp
                   license.jsp
                   policies.jsp
                   qlicense.jsp
                   qs_popup.js
                   qs_printpage.js
                   startup.jsp
                   submitting.jsp
                   template

            During the build process, these documents will be copied to
            $DSPACE_SRC/build/jsp/guidelines/ before being packaged into dspace.war.

            The above files are described below.




QSpace Customizations SOP                                                              12
            8.2.1 About QSpace JSP

                  “about_QS.jsp” is one of five new pages in the QSpace web user interface.
                  The name of these files includes “_QS” to indicate that they are a QSpace
                  page served up by a QSpace servlet. The other four web user interface
                  pages will be discussed in the Functionality section of this document.

                  “about_QS.jsp” provides access to QSpace guidelines and documents. It
                  also links to important ancillary web-sites. The servlet
                  AboutQSpaceServlet_QS.java will serve about_QS.jsp when requested.
                  The servlet is found in:

                            $DSPACE_SRC/src/org/dspace/app/webui/servlet_qs/

                  There are a five QSpace servlets in this directory. The four others are
                  described in the Functionality section. Using a servlet for a page like
                  about_QS.jsp may seem unnecessary, since the content of the page
                  appears to be static. However, using a servlet lets us track and make
                  decisions based on whether the end user is anonymous or authenticated
                  (logged in).

                  Some configuration is necessary for the DSpace software to map user
                  interface requests to servlets. Add the following entries in the appropriate
                  sections of $DSPACE_SRC/etc/dspace-web.xml:

                            <!-- Servlets -->

                            <servlet>
                            <servlet-name>about-qspace_QS</servlet-name>
                            <servlet-class>
                            org.dspace.app.webui.servlet_qs.AboutQSpaceServlet_QS
                            </servlet-class>
                            </servlet>

                            <!-- Servlet Mappings -->

                            <servlet-mapping>
                            <servlet-name>about-qspace_QS</servlet-name>
                            <url-pattern>/about-qspace_QS</url-pattern>
                            </servlet-mapping>

                  The about_QS.jsp page titled “About QSpace” provides links that are
                  described next.




QSpace Customizations SOP                                                                   13
            8.2.2 Guideline JSPs

                  The guideline pages are implemented as a popup. The guidelines.jsp page
                  is the entry point from the About QSpace page. The guidelines.jsp
                  provides a menu of links to each of the following guideline pages:

                            content.jsp
                            format.jsp
                            license.jsp
                            policies.jsp
                            startup.jsp
                            submitting.jsp

                  Servlets were not deemed necessary for these pages. The content of the
                  pages is static, and since they were implemented as popups, the
                  about_QS.jsp from which they were launched would still be visible. The
                  about_QS.jsp maintains state such as logged in user name.

                  The original source for these pages was Univeristy of Toronto’s TSpace.
                  The conversion of text strings from TSpace to QSpace was completed by
                  Sam Kalb before delivering the documents for incorporation into the web
                  application framework.

                  The guideline pages reference a number of resources housed on a Queen’s
                  Library server, allowing for ease of editing by the project manager. They
                  include:

                            qspace-governance.htm              QSpace Team
                            qspace-authorization-form.xls      Workflow Form
                            memo-of-understanding.doc          Memo of Understanding

                  The guidelines also reference a list of Dublin Core with Qualifiers.
                  DCQualifiers.jsp is collocated with guideline files.

                            DCQualifiers.jsp




QSpace Customizations SOP                                                                14
            8.2.3 JavaScript “includes” for Guideline JSPs

                  Each of the guidelines files include 2 java scripts, one to close the popup
                  window, and a second to print the popup window. The java scripts are co-
                  located with the guideline files:

                            qs_popup.js         # closes popup window
                            qs_printpage.js     # prints popup window



            8.2.4 JSP Template for Guideline JSPs

                  The guidelines files were converted from html to jsp files to take
                  advantage of the DSpace jsp tags. The tags provide access to the DSpace
                  style sheet, and DSpace utilities. To convert a well formatted html
                  document to a DSpace jsp file, follow instructions in template and save as
                  <myfilename>.jsp. The template is collocated with the guideline files:

                            template




QSpace Customizations SOP                                                                  15
      8.3   Rebuild QSpace to Effect Document Changes

            Stop Tomcat. Rebuild using appropriate Ant target. Start Tomcat. A sample script
            has been provided as “Appendix B - QSpace_update.sh” that outlines all
            necessary steps to rebuild QSpace and deploy changes.

                   rootr# /etc/local.d/tomcat stop
                   rootr# su – dspace
                   dspace% ~/bin/QSpace_update.sh
                   dspace% sleep 10
                   dspace% exit
                   rootr# /etc/local.d tomcat start




QSpace Customizations SOP                                                                16
9.0 User Interface: “Look and Feel”
      A number of Queen’ resources were consulted before customizing the “Look and Feel”
      of QSpace. They include, but are not limited to:

             The Web at Queen’s: Guidelines for World Wide Web Sites and Publishing
                    http://www.queensu.ca/qwww/
             The Web at Queen’s: The Queen's Template
                    http://www.queensu.ca/qwww/template.shtml
             Marketing Services: Visual Identity Manual
                    http://qnc.queensu.ca/marketingservices/html/visualidentity.html

      The latter two links provide very specific guidelines for Queen’s web site design. The
      Queen’s Template page provides example page layouts. The Visual Identity Manual
      provides a detailed description of resource usage in Queen’s web pages. Many resources
      such as logos, images, and fonts can be found on this site. These resources are also
      available on a CD available from Queen’s Graphic Design Services.

      There were no written requirements for the QSpace customizations. However the QSpace
      Implementation Group provided a number of guidelines:

            QSpace should look good in following browser and operating system
             combinations
                o Internet Explorer and Netscape on Windows
                o Netscape on Unix
                o Safari on Mac
            Target terminal resolution 800x600
            Page view or layout
                o Anchor UI to top left
                o UI to expand horizontally with window resizing
                o Text should wrap
                o Typeface DSpace defaults
            Accessibility should be addressed in all changes

      The following sections document the customizations applied to the DSpace default UI to
      create the QSpace UI.




QSpace Customizations SOP                                                                 17
      9.1   Text String Conversion DSpace => QSpace

            Convert all instances of text string DSpace to QSpace. Use the script supplied at
            “Appendix-A DSpaceToQSpace.sh” to effect the desired text string conversion.
            The script can be used as is, or each line of the script can be run line by line,
            ensuring the desired changes.

            Note: this was previously discussed in the section about text string conversion of
            DSpace to QSpace in Popup Help.




QSpace Customizations SOP                                                                   18
      9.2   Style sheet

            DSpace source includes a comprehensive style sheet imp lemented as a JSP.
            Implementing the style sheet as a JSP offers the flexibility to dynamically create
            slightly different style sheets customized to address different browsers. In
            addition a style sheet offers single point of definition for many of the
            customizations.

            Copy the supplied style sheet JSP from:

                   $DSPACE_SRC/jsp/styles.css.jsp

            to:

                   $DSPACE_SRC/jsp/local/styles.css.jsp

            Edit only the style sheet located in the local directory.


            9.2.1 Fonts

                   Queen’s Visual Identity Standards suggests the use of Palatino and Optima
                   for fonts.

                   The QSpace Implementation team chose to keep the DSpace fonts, which
                   are similar to Optima. The DSpace style sheet stipulates:

                   font-family: "verdana", Arial, Helvetica, sans-serif



            9.2.2 Colours

                   The QSpace Style sheet reflects the colours suggested by Queen’s Visual
                   Identity manual, and the Queen’s Templates. The navigation bar is pale
                   yellow, the QSpace is largely dark blue, the Queen’s logo background is
                   white, and the text background is white.




QSpace Customizations SOP                                                                    19
      9.3   Layout




            Figure 1 QSpace Ho mepage in Netscape edit mode to show table layout.



            9.3.1 Body

                    Layout is achieved with tables that are created on the fly by using a
                    number of JSPs, each JSP implementing a component of the final layout.
                    There are common components (JSPs) for the header, footer, navigation
                    bar, admin navigation bar, and location bar. The body panel displays
                    content, and changes depending on the context. All of these files with
                    exception of the body panel JSP can be found in:

                            $DSPACE_SRC/jsp/layout/
                                              footer-default.jsp
                                              header-default.jsp
                                              location-bar.jsp
                                              navbar-admin.jsp
                                              navbar-default.jsp




QSpace Customizations SOP                                                                20
                  To customize these components of the layout copy them to:

                            $DSPACE_SRC/jsp/local/layout/

                  before editing.

                  The body panel JSP displays content. Sometimes the content is static,
                  sometimes dynamic. For example the search form (advanced.jsp) is static,
                  while search result (results.jsp) is dynamic. Both are populated by JSPs.
                  The JSPs used to populate content are scattered about:

                            $DSPACE_SRC/jsp/*

                  Some samples of body panel JSPs:

                            $DSPACE_SRC/jsp/home.jsp (called from index.jsp)
                            $DSPACE_SRC/jsp/search/advanced.jsp
                            $DSPACE_SRC/jsp/search/results.jsp

                  Each body panel JSP uses the Dspace “layout” tag to populate all the
                  common components, such as footer, header, navigation, etc. All
                  customizations to body panel JSPs should be applied to copies of the JSPs
                  in the local directory:

                            $DSPACE_SRC/jsp/local/*

                  The style sheet can be used to apply style changes to all body panel JSPs.
                  For functional changes, each individual body panel JSP must be
                  customized. home.jsp has been customized for QSpace to remove the
                  search form, simplifying the UI. Every body panel JSP (approximately
                  100) has been customized to turn off breadcrumb navigation using the
                  “layout” tag.

                  Five new body panel JSPs have been created expressly for QSpace. They
                  will be discussed in the section titled Functionality. They include:

                            about_QS.jsp
                            howto-submit_QS.jsp
                            browse_QS.jsp
                            my-account_QS.jsp
                            search_QS.jsp




QSpace Customizations SOP                                                                 21
            9.3.2 Right Sidebar (body)

                  The body panel in the default DSpace UI displays news in a sidebar to the
                  right of content. This sidebar is a feature that has been disabled in QSpace,
                  on the recommendation of the QSpace Implementation team, in keeping
                  with a simple uncluttered user interface.

                  To re-enable this feature two files need to be edited. First edit
                  $DSPACE_SRC/jsp/local/home.jsp and uncomment following line found
                  near bottom of file:

                            <dspace:sidebar><%= sideNews %></dspace:sidebar>

                  Second, edit $DSPACE_SRC/jsp/local/dspace-admin/news-main.jsp,
                  remove text “DISABLED” and in its place uncomment following lines in
                  the file:

                            <input type="hidden" name="position" value=
                                 <%= Constants.NEWS_SIDE %>>
                            <input type="submit" name="submit_edit"
                                value="Edit...">

                  For each community and collection, there is a similar feature to populate
                  the sidebar with news or the most recent submissions to a community.
                  This feature has not been disabled.




QSpace Customizations SOP                                                                   22
            9.3.3 Header (header-default.jsp)

                  The header is composed of two objects. A Queen’s logo from the Queen’s
                  Visual Identity Standards CD, and a QSpace banner. The Queen’s logo is
                  hyperlinked to the Queen’s homepage, while the QSpace banner is
                  hyperlinked to the QSpace homepage.




                  Figure 2 - QSpace User Interface Header

                  The QSpace banner was produced by Queen’s ITS Communications, using
                  a stock image and the Queen’s font. This font includes two characters, the
                  swash-Q and the lowered apostrophe. The “swash-Q” and lowered
                  apostrophe are only to be used in the word “Queen’s”.

                  The logo and banner are placed in adjacent cells of a table at top of page.
                  The Queen’s logo is in a fixed width cell to the left. The image size and
                  background colour is in keeping with Queen’s Visual Identity Standards.

                  The QSpace banner is located in the right hand cell. This cell is variable
                  size to fill the browser window. The variable sized QSpace banner departs
                  from Queen’s Visual Identity Standards suggestion of a 600 pixel wide
                  banner, sitting on top of a 600 pixel text area. The QSpace Implementation
                  Group chose to depart from the standard because the DSpace layout was
                  built on a variable banner and text area.

                  The variable sized banner did present one problem. The banner is an
                  image, and cannot be resized as the browser window is resized
                  horizontally. To address this, the cell containing the QSpace banner has a
                  background grey colour. The right side of the image fades into the grey
                  background. The background will fill the cell as the browser is resized
                  horizontally.

                  The code to make these changes can be found in:

                            $DSPACE_SRC/jsp/local/layout/header-default.jsp

                  The images can be found in:

                            $DSPACE_SRC/jsp/local/image/




QSpace Customizations SOP                                                                   23
            9.3.4 Footer (footer-default.jsp)



                  Figure 3 - QSpace footer in Netscape edit mode to show table layout.

                  The Queen’s Templates do not use footers. QSpace Implementation team
                  chose the footer as a convenient place to maintain a link to DSpace
                  Software and to recognize copyrights. The footer background color is pale
                  yellow to match the left hand navigation. This is in keeping with
                  suggested color of templates.

                  A “TOP” link was added to help in navigating long pages. A feedback
                  link was removed. The final resting place for the Feedback link is in the
                  QSpace navigation bar. The first cell is sized to the same width as the
                  navigation bar above it, so that the textual content of the footer is aligned
                  under the main content panel.




QSpace Customizations SOP                                                                    24
            9.3.5 Navigation bar (navbar-default.jsp)




                  Figure 4 QSpace navigation vs DSpace navigation in Netscape edit mode to show table
                  layouts.

                  The navigation bar has changed significantly from the default DSpace
                  navigation bar, in keeping with the goal expressed by QSpace
                  Implementation team of simplifying user interface.

                           Simple search form was removed
                           Advanced search link was removed
                           Search link replaces simple search form
                           All arrow images beside links were removed
                           4 browse links compressed into one “Browse” link
                           “How to Submit” link added
                           “Receive email updates”, “My D-Space”, and “Edit Profile”
                            compressed into “My Account” link
                           Feedback link formerly in footer added to bottom of navigatio n bar
                           About QSpace moved to more prominent location
                           Separators added




QSpace Customizations SOP                                                                          25
            9.3.6 Breadcrumb Navigation (location-bar.jsp)

                  Breadcrumb navigation was provided in the default UI for DSpace.
                  Breadcrumb navigation is usually placed near the top of the page and
                  looks like:

                            MyHome>SubContext>PresentContext

                  The breadcrumb navigation in DSpace was not consistently applied. The
                  QSpace Implementation team chose to remove it from the QSpace UI,
                  after deciding that it did not add significant value.

                  The breadcrumb navigation is turned on/off via a DSpace JSP Tag
                  attribute. Unfortunately there is no centralized configuration mechanism to
                  set a Tag or a Tag attribute. This meant having to edit every jsp file, to
                  turn off breadcrumb navigation.

                  To turn off breadcrumb navigation find the layout tag near the top of every
                  jsp in $DSPACE_SRC/jsp/local/ and set the locbar attribute to “off”,
                  similar to the following:

                            <dspace:layout locbar="off" title="Search">




QSpace Customizations SOP                                                                 26
      9.4   Favicon




            DSpace ships with a “D” favicon:

                     $DSPACE_SRC/jsp/favicon.ico

            For QSpace a “Q” favicon was created:

                     $DSPACE_SRC/jsp /local/favicon.ico

            Favicons are displayed in some browsers:




            Figure 5 - Use of favicon in Netscape (inside red circles).




QSpace Customizations SOP                                                 27
            `Follow these steps to create the favicon.ico file:

               1. The favicon was created with gimp2, 256x256 pixels. Choose a blue- grey
                  foreground colour, then apply it with gradient tool from top left to bottom
                  right corner. Insert text, letter Q from Queen's bold font. This font can be
                  found on the "Identity Standards" CD ROM, also available on the SDIG
                  shared folder under QSpace. Stretch the Q vertically to fill more of the
                  square palette. Save the image as a jpeg

               2. Goto:

                   http://www.chami.com/html-kit/services/favicon/

               3. This site has a utility to create a favicon.ico file from an image (i.e. the
                  one created above).

               4. Follow instructions to create and upload favicon.ico

               5. Replace jsp/local/favicon.ico with newly created favicon.ico.




QSpace Customizations SOP                                                                        28
      9.5   DSpace JSP Tags

            The Dspace JSP Tags are defined and described in:

                   $DSPACE_SRC/jsp/WEB-INF/dspace-tags.tld

            The source code for Tags can be found in:

                   $DSPACE_SRC/src/org/dspace/app/webui/jsptag/

            If a Tag is to be modified, do so in:

                   $DSPACE_SRC/jsp/local/WEB-INF/dspace-tags.tld

            Note: the “layout” tag controls all the common components to lay out pages.




QSpace Customizations SOP                                                                 29
10.0 Functionality
      Five new JSPs and servlets were created to deal with User Interface functionality
      requested by the QSpace Implementation team.

             about_QS.jsp
             AboutQSpaceServlet_QS.java

             howto-submit_QS.jsp
             HowtoSubmitServlet_QS.java

             browse_QS.jsp
             BrowseServlet_QS.java

             my-account_QS.jsp
             MyAccountServlet_QS.java

             search_QS.jsp
             SimpleSearchServlet_QS.java

      Each servlet is related to a similarly named JSP. To identify the JSPs and servlets as
      additions to the DSpace source, their file names include “_QS”.

      The QSpace servlets were all grouped in a common directory:

             $DSPACE_SRC/src/org/dspace/app/webui/servlet_qs/

      The JSPs are not separated into a single directory identified with QSpace. The JSPs were
      placed logically into existing directories where related DSpace resources resided. For
      example the search_QS.jsp was placed in $DSPACE_SRC/jsp/local/search/ with the
      DSpace servlets advanced.jsp and results.jsp.

      All five servlets are very simple. Each servlet extends DSpaceServlet. Each servlet
      instantiates a Logger and logs an info level message. Finally each servlet calls
      JSPManager to showJSP.

      The five JSPs are more variable, since they are rendering very different pages in the User
      Interface. They do have some common elements. They all take advantage of the
      dspace:layout tag to provide header, footer, etc. They all import common UI tools and all
      have access to the Context object to determine if a user is logged in.

      To have QSpace recognize these new servlets and jsps configure
      $DSPACE_SRC/etc/dspace-web.xml as noted in “Appendix D – Excerpts dspace-
      web.xml”.

      The next sections will look at the functionality provided by each JSP/servlet pair.




QSpace Customizations SOP                                                                      30
      10.1 About QSpace




            Figure 6 - About QSpace

            JSP and servlet files:

                    $DSPACE_SRC/jsp/local/guidelines/about_QS.jsp
                    $DSPACE_SRC/src/org/dspace/app/webui/servlet_qs/
                               AboutQSpaceServlet_QS.java

            The About QSpace page centralizes links to reference material to help QSpace
            users. This page’s contents have been previously discussed under User
            Guidelines.




QSpace Customizations SOP                                                                  31
      10.2 How to Submit




            Figure 7 - How to Sub mit to QSpace

            JSP and servlet files:

                    $DSPACE_SRC/jsp/local/submit/howto-submit_QS.jsp
                    $DSPACE_SRC/jsp/local/submit/howto-submit_QS.doc
                    $DSPACE_SRC/src/org/dspace/app/webui/servlet_qs/
                               HowtoSubmitServlet_QS.java

            “How To Submit to QSpace” page is aimed at providing a quick simple reference
            to users wishing to submit content. This page is reached by clicking “How to
            Submit” on the navigation menu. This will invoke HowtoSubmitServlet_QS which
            will display howto-submit_QS.jsp.

            There is a link on this page to “Very Detailed Help”. This points to a MS Word
            doc howto-submit_QS.doc.




QSpace Customizations SOP                                                                    32
      10.3 Browse




            Figure 8 - Bro wse QSpace

            JSP and servlet files:

                    $DSPACE_SRC/jsp/local/browse/browse_QS.jsp
                    $DSPACE_SRC/src/org/dspace/app/webui/servlet_qs/
                               BrowseServlet_QS.java

            “Browse QSpace” page addresses the concern of the QSpace Implementation
            team to reduce clutter on the navigationmenu, providing a clearer end user
            experience. In the default DSpace navigation menu all four browsing options were
            available.

            In QSpace there is one link in the navigation menu that hides the four browsing
            options. In the QSpace navigation menu clicking on Browse will invoke
            BrowseServlet_QS, which in turn will display browse_QS.jsp. This JSP displays
            the same four browsing options that were formerly available in the default
            DSpace menu. The four browsing links point to the same servlets as they did
            when they were in the default navigation menu.




QSpace Customizations SOP                                                                 33
      10.4 My Account




            Figure 9 – My Account



            JSP and servlet files:

                   $DSPACE_SRC/jsp/local/myaccount/my-account_QS.jsp
                   $DSPACE_SRC/src/org/dspace/app/webui/servlet_qs/
                              MyAccountServlet_QS.java

            “My Account” page addresses the concern of the QSpace Implementation team to
            reduce clutter on the navigation menu, providing a clearer end user experience. In
            the default DSpace navigation menu all three account services were available.

            In QSpace there is one link in the navigation menu that hides the three account
            options. In the QSpace navigation menu clicking on “My Account” will invoke
            MyAccountServlet_QS, which in turn will display my-account_QS.jsp. This JSP
            displays the same three account options that were formerly available in the default
            DSpace menu. The three account links point to the same servlets as they did when
            they were in the default navigation menu.

            Links were added in each of the three account pages to allow them to link to the
            other two account pages. This change was done in the JSPs. No modificatio ns to
            the corresponding servlets were necessary.

                   $DSPACE_SRC/jsp/local/mydspace/main.jsp
                   $DSPACE_SRC/jsp/local/mydspace/subscriptions.jsp
                   $DSPACE_SRC/jsp/local/register/edit-profile.jsp




QSpace Customizations SOP                                                                   34
      10.5 Search


            10.5.1           Simple Search




                     Figure 10 - Search QSpace (simp le search)

                     JSP and servlet files:

                             $DSPACE_SRC/jsp/local/search/search_QS.jsp
                             $DSPACE_SRC/jsp/local/search/search_tips.jsp
                             $DSPACE_SRC/src/org/dspace/app/webui/servlet_qs/
                                        SimpleSearchServlet_QS.java

                     SimpleSearchServlet_QS is invoked when the navigation bar “Search” link
                     is clicked. This will in turn display “Search QSpace” (search_QS.jsp).
                     The“Search Tips” box (search_tips.jsp) is an included component. This
                     component is also included by the Advanced Search.




QSpace Customizations SOP                                                                35
            10.5.2           Advanced Search




                     Figure 11 - Advanced Search

                     JSP and servlet files:

                             $DSPACE_SRC/jsp/local/search/advanced.jsp
                             $DSPACE_SRC/jsp/local/search/search_tips.jsp
                             $DSPACE_SRC/src/org/dspace/app/webui/servlet/
                                        AdvancedSearchServlet.java

                     AdvancedSearchServlet_QS.java is invoked from the “Search QSpace”
                     page (simple search). The servlet in turn will display the Advanced Search
                     form (advanced.jsp). The“Search Tips” box (search_tips.jsp) is an
                     included component. This component is also included by the Simple
                     Search.

                     The Advanced Search does not represent a new JSP or servlet.
                     Customizations to advanced.jsp allow for the inclusion of the “Search
                     Tips” box and some formatting of the content and layout.




QSpace Customizations SOP                                                                    36
            10.5.3           Search Tips




                     Figure 12 - Help With Searching On QSpace

                     JSP file:

                             $DSPACE_SRC/jsp/local/help/more_search_tips.jsp

                     Both the Simple and Advanced search pages provide a link to “More
                     Search Tips” (more_search_tips.jsp).

                     This page is a reworking of the Search Tips section o f the Popup help.
                     Since there are two copies of the same Search Tips content, there is a risk
                     that they will get out of sync. Ultimately, the link in both the Simple and
                     Advanced search pages should point to a Search Tips target in the Popup
                     help, instead of to a dedicated JSP.




QSpace Customizations SOP                                                                     37
            10.5.4           Boolean Override

                     The Jakarta Lucene search engine included with DSpace treats certain
                     search words as stop words. It effectively ignores them in a search. Both
                     “or” and “and” are treated as stop words.

                     If “AND” or “OR are used in capitals they are viewed as Boolean
                     operators instead of stop words.

                     Search for “War and Peace”.

                     Search string:

                             War and Peace

                     Ignore the “and” because it is a stop word, then search for results with
                     “War” or “Peace”. This may not be what the user was expecting, a widely
                     cast search.

                     Search string:

                             War AND Peace

                     This search will be narrower, and will likely contain the desired expected
                     search result.

                     To avoid user confusion, it is assumed that all search string instances of
                     “and” are meant to be the Boolean “AND”. To implement this QSpace
                     will use a JavaScript that will capitalize all letters, just prior to posting the
                     query string to the search engine. The capitalization will have no effect on
                     the Booleans OR and NOT.

                     The JavaScript is included buy both the simple search and the advanced
                     search JSPs. The JavaScript is found:

                             $DSPACE_SRC/jsp/local/search/toUpperCase.js




QSpace Customizations SOP                                                                          38
11.0 Accessibility
      DSpace out of the box conforms well to accessibility constraints. Images are kept to a
      minimum, and when used are logically labelled. DSpace also provides for a graceful
      transformation of table contents to coherent text. JavaScript is also used sparingly, and
      where it is used, there are no dynamic events.

      After customizing DSpace accessibility testing was completed. Testing was performed
      using JAWS screen reader and Lift Text Transcoder.

      JAWS screen reader can be found on the web at:
            http://www.freedomscientific.com/fs_products/software_jaws.asp

      Lift Text Transcoder can be found at:

             http://webproxy.queensu.ca:9090/tt/
             https://webproxy.queensu.ca:9443/tt/

      Important considerations:
          Links with JavaScript behind them still rendered as links
          Navigation was clear
          Tabbing through page content did not miss any items
          Tables laid out to be easily read
          Number of table columns keep to minimum
          Avoid merging of table cells
          Popup windows do not have an equivalent in a text only (single window)
             environment.

      A number of accessibility issues, compete with design decisions made before testing
      accessibility. Popup window functionality is ignored in text readers. Text windows treat a
      popup link as a destination, instead of spawning a second browser context. Text readers
      are a single context (single browser window) environment.

      The single window environment means we lose the concept of containing a “Logged in
      user”. Much of the reason for the popup guidelines was to keep a persistent QSpace
      window open displaying the “Logout” link. We have accepted that users of accessibility
      tools visiting QSpace may forget to back out of help or guideline pages to “Logout”.




QSpace Customizations SOP                                                                         39
12.0 Site Administrator Guide
      A guide to help Site Administrators familiarize themselves with the initial setup of
      communities and collections is available:

             $DSPACE_SRC/jsp/local/admin-guide_QS/qspace_admin_guide.doc

      This document can be downloaded from the dspace-admin page when logged in as site
      administrator.

             https://qspace.library.queensu.ca/dspace-admin/

      When QSpace is upgraded to the DSpace 1.2.1 source code, the guide will need to be
      updated to match changes to the authorization model.




QSpace Customizations SOP                                                                    40
13.0 Reporting
      A script run daily in crontab, to email disk usage and ssl certificate expiry date to dspace-
      admin (see Email Aliases).

      Script:
                /export/home/dspace/bin/QSpace_dailyReport.sh

      Root crontab entry:
                # QSpace - send daily report of disk usage and ssl certificates
                0 4 * * * /export/home/dspace/bin/QSpace_dailyReport.sh > /dev/null 2>&1


      See Appendix F – QSpace_dailyReport.sh for more details. A sample email of the output
      from this script is included at Appendix G – QSpace Daily Report (sample)




QSpace Customizations SOP                                                                       41
14.0 Patches
      A number of patches have been applied against the DSpace 1.2 source code to address
      bugs. Further details about these patches can be found on the Sourceforge DSpace site:

             http://sourceforge.net/projects/dspace/


      14.1 Patches Applied

             Patch:1017010
             Description:MediaFilter patch
             Date:2004-08-26 09:35
             Notes: 3 modifications to MediaFilterManager.java including a fix for bug#
             1015296 items modification time always updated.

             Patch:1053494
             Description:Mediafilter improved scaling
             Date:2004-10-24 20:46
             Notes: addresses problems with Mediafilter processing large jpgs into thumbnails

             Patch:1051954
             Description:EPerson Group enhancement
             Date:2004-10-21 21:28
             Notes: allows Groups (EPerson Groups) to contain other Groups


      14.2 Failed Patches Subsequently Uninstalled

             Patch:1071933
             Description: Only show submit to this collection button with proper right
             Date: 2004-11-23 09:29
             Notes: this patch was buggy, and did not work. This patch was undone.




QSpace Customizations SOP                                                                      42
15.0 Connection Exhaustion Bug
      DSpace 1.2 suffers from a known database connection exhaustion bug. This bug has been
      fixed in DSpace 1.2.1.

      QSpace is built on DSpace 1.2.0 and will not upgrade to 1.2.1 until the project goes into
      production. A number of measures have been undertaken to address the connection
      exhaustion problem. The following sections discuss these measures.




QSpace Customizations SOP                                                                     43
      15.1 Postpone Exhaustion by Increasing System Resources


            15.1.1          Tune Solaris

                     As rootr user increase Solaris shared system resources, edit /etc/system as
                     follows:

                            set   shmsys:shminfo_shmmax=0x2500000
                            set   shmsys:shminfo_shmmin=1
                            set   shmsys:shminfo_shmmni=256
                            set   shmsys:shminfo_shmseg=256
                            set   semsys:seminfo_semmap=256
                            set   semsys:seminfo_semmni=1024
                            set   semsys:seminfo_semmns=1024
                            set   semsys:seminfo_semmsl=32

                     Reboot for the changes to take effect.

                            rootr# reboot -- -r



            15.1.2          Tune PostgreSQL database

                     As postgres user edit /export/home/postgres/pgsql/data/postgresql.conf
                     with following changes:

                            max_connections = 160
                            authentication_timeout = 60
                            shared_buffers = 4096
                            sort_mem = 1024

                     As rootr user stop and start postgresql. See /etc/local.d/postgres.


            15.1.3          Tune QSpace

                     As dspace user edit $DSPACE/config/dspace.cfg with following changes:

                            db.maxconnections = 100
                            db.maxwait = 10000

                     As rootr user stop and start Tomcat: See /etc/local.d/tomcat.




QSpace Customizations SOP                                                                     44
      15.2 Daily Restart to Reset Database Connections

            Restarting Tomcat will release hung database connections. To address the
            connection exhaustion problem a root cronjob is run each morning to stop and
            start Tomcat.

                   0 3 * * *
                   /export/home/dspace/bin/QSpace_connExhaustRestart.sh hard >
                   /dev/null 2>&1

            “Appendix C – QSpace_connExhaustRestart.sh” is included in this document.


      15.3 Restart after an “Internal Server Error”

            Most “Internal Server Errors” encountered are due to the connection exhaustion
            problem. If there is an Internal Server Error, a file will be written to
            /tmp/tomcat_tmp.txt by the Internal Error Servlet
            $DSPACE_SRC/src/org/dspace/app/webui/servlet/InternalErrorServlet.java.

            The error message displayed by $DSPACE_SRC/jsp/local/error/internal.jsp was
            changed to:

                   NOTE: QSpace will be unavailable for 2 minutes, as we restart QSpace in
                   an effort to address the problem. Thank you for your patience.

            A root cronjob is run every 5 minutes to look for this file. If the file is found then
            Tomcat is restarted.

                   5,10,15,20,25,30,35,40,45,50,55 * * * *
                   /export/home/dspace/bin/QSpace_connExhaustRestart.sh soft >
                   /dev/null 2>&1

            “Appendix C – QSpace_connExhaustRestart.sh” is included in this document.




QSpace Customizations SOP                                                                       45
                        Appendix A - DSpaceToQSpace.sh

      #!/bin/sh

      # Use this script to convert text strings from DSpace to QSpace
      # Note the variants of DSPACE/ DSpac e.
      # This script should be used wit h caution, viewing first what the
      # grep will return before doing the replace.

      # IMPORTA NT: modify from $DSPACE_S RC/jsp/local / down
      # DO NOT modify files in $DSPA CE_SRC/jsp/

      cd /export/home/dspace/ds pace_src/dspace-1.2-s ource/jsp/local

      # jsps
      grep -l   " DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/ DSpace/ QSpace/g'
      grep -l   "DSPACE" `find . | grep jsp$` | xargs perl -pi -e 's/DSPACE/QSPA CE/g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace Home/QSpac e Home/g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace is Live/QSpace is Live/g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace home pag/QS pace home pag/g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace Supported/QSpac e Supported/g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace Admin/QSpace Admin/g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace could/QSpace could/ g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace recog/ QSpace recog/ g'
      grep -l   "DSpace" `find . | grep jsp$` | xargs perl -pi -e 's/DSpace does/QSpace does/g'

      # html
      grep -l   " DSpace" `find . | grep html$` | xargs perl -pi -e 's/ DSpace/ QSpac e/g'
      grep -l   "DSPACE" `find . | grep html$` | xargs perl -pi -e 's/DSPACE/QSPA CE/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace A dm/QSpac e Adm/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace S up/QSpace Sup/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace Format/QSpace Format/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace: /QSpace: /g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace Help/QSpac e Help/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace captures/QSpace capt ures/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace uses/QSpace uses/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace gen/ QSpace gen/g'
      grep -l   "DSpace" `find . | grep html$` | xargs perl -pi -e 's/DSpace req/ QSpace req/g'




QSpace Customizations SOP                                                                                   46
                        Appendix B - QSpace_update.sh

      #!/bin/sh
      # QSpace_updat e.sh

      CA TALINA _HOME=/export/home/ds pace/tomcat/jakart a-tomcat-5.0.28
      DSPACE_S RC=/export/home/dspace/dspac e_src/dspace -1.2-source
      DSPACE=/export/home/dspace/dspace

      echo "UP DA TE (COMPILE:(INS TA LL_CODE, BUILD_WARS)):"
      echo "=============================================="
      cd $DSPACE_S RC
      ant -Dconfig=/export/home/dspace/ds pace/config/ds pace.cfg update

      # Use Sparingly:
      #echo "Clean out DS pace and Tomcat logs"
      #rm -f $DSPACE/log/*
      #rm -f $CA TALINA _HOME/logs/*

      echo "REMOVE DSPACE* WARS and DIRS:"
      echo "==============================="
      rm -r $CA TALINA_HOME/webapps/dspace*

      echo "COPY NEW WARS INTO PLA CE :"
      echo "============================"
      cp $DSPACE_S RC/build/*.war $CA TA LINA_HOME/webapps

      echo "+++++++++++++++++++++++++++++++++"
      echo "As rootr start js vc: /etc/local.d/tomcat start"
      echo "+++++++++++++++++++++++++++++++++”




QSpace Customizations SOP                                                  47
           Appendix C – QSpace_connExhaustRestart.sh

      #!/bin/sh

      TS=`date '+%m -%d-%y_% H:%M:%S'`

      FILE="/tmp/tomcat_tmp.txt"
      FILE _TS="/tmp/tomcat.$TS"

      EMAIL="dspac e-admin"

      #
      # The EMAIL variable is intentionally set to the 'dspace-admin'
      # address. This can be found in the '/etc/mail/alias es' file
      # if it needs to be updated.
      #
      # NOTE: after updating '/ etc/mail/aliases' file, run 'newaliases'
      # to signal a reread of alias file
      #
      #EMAIL="qspace-noreply@post.queensu.ca"


      echo "STA RT connExhaustRestart: $TS \n"
      if [ $1 = "soft" ]; then
         if test -r ${FILE}; then
            echo "tomcat_tmp.txt EXIS TS\n"
            /usr/ucb/mail -s "Internal Error - QSPACE HA CK" ${EMA IL} < ${FILE}
            /bin/mv ${FILE} ${FILE_TS }
            /etc/local.d/tomcat stop
            sleep 40
            /etc/local.d/tomcat start
         fi
      fi

      if [ $1 = "hard" ] ; then
         echo "connExhaustRestart hard restart"
         echo "Daily restart: $TS" | /usr/ucb/mail -s "QSPACE - HA RD RES TART" ${EMAIL}
         /etc/local.d/tomcat stop
         sleep 40
         /etc/local.d/tomcat start
      fi

      echo "END connExhaustRestart: $TS \n"




QSpace Customizations SOP                                                                  48
                 Appendix D – Excerpts dspace-web.xml
      Note: dspace-web.xml is renamed web.xml during the build process and is deployed to
      $CA TALINA_HOME/webapps/dspace/WEB-INF/web.xml

      <!-- QSPACE modifications - Section 1 of 2 -->
      <!-- ============================= -->
      <servlet>
      <servlet-name>simple-search_QS</servlet-name>
      <servlet-class>org.dspace.app.webui.servlet_qs.SimpleSearchServlet_QS</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>about-qspace_QS</servlet-name>
      <servlet-class>org.dspace.app.webui.servlet_qs.AboutQSpaceServlet_QS</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>browse_QS</servlet-name>
      <servlet-class>org.dspace.app.webui.servlet_qs.BrowseServlet_QS</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>howto-submit_QS</servlet-name>
      <servlet-class>org.dspace.app.webui.servlet_qs.HowtoSubmitServlet_QS</servlet-class>
      </servlet>

      <servlet>
      <servlet-name>my-account_QS</servlet-name>
      <servlet-class>org.dspace.app.webui.servlet_qs.MyAccountServlet_QS</servlet-class>
      </servlet>

      <!-- QSPACE modifications - Section 2 of 2 -->
      <!-- ============================= -->
      <servlet-mapping>
      <servlet-name>simple-search_QS</servlet-name>
      <url-pattern>/simple-search_QS</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>about-qspace_QS</servlet-name>
      <url-pattern>/about-qspace_QS</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>browse_QS</servlet-name>
      <url-pattern>/browse_QS</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>howto-submit_QS</servlet-name>
      <url-pattern>/howto-submit_QS</url-pattern>
      </servlet-mapping>

      <servlet-mapping>
      <servlet-name>my-account_QS</servlet-name>
      <url-pattern>/my-account_QS</url-pattern>
      </servlet-mapping>




QSpace Customizations SOP                                                                     49
                         Appendix E – Restart Tomcat

      dspace% su rootr
        Password: ********
      root# /etc/local.d/tomcat stop
      root# /etc/local.d/tomcat start




QSpace Customizations SOP                              50
                    Appendix F – QSpace_dailyReport.sh
      #!/bin/sh

      # Send daily report of disk usage to QSpace technical lead
      #
      # The EMAIL variable is intentionally set to the 'dspace-admin'
      # address. This can be found in the '/etc/mail/aliases' file
      # if it needs to be updated.
      #
      # NOTE: after updating '/etc/mail/aliases' file, run 'newaliases'
      # to signal a reread of alias file

      ECHO="/bin/echo"

      DSPACE_HOME="/export/home/dspace"
      PGSQL_HOME="/export/home/postgres"
      TOMCAT_HOME="/e xport/home/dspace/tomcat/jakarta-tomcat-5.0.28"

      EMAIL="dspace-admin"
      FILE="/tmp/QSpace_report.txt"

      CMD="COMMAND:"
      RES="\nRESULT:"



      /bin/echo "===================\nQSPACE D AIL Y REPORT\n===================\n\n" > ${FILE}

      /bin/echo "SSL Certificates:" >> ${FILE}
      /bin/echo "================" >> ${FILE}
      /usr/j2se/bin/keytool -keystore /export/home/dspace/.keystore -list -v -storepass password | grep '^[VO][aw][l
      n][ie][dr]' >> ${FILE}
      /bin/echo >> ${FILE}
      /bin/echo >> ${FILE}

      /bin/echo "Disk Usage carrick.its (kbytes):" >> ${FILE}
      /bin/echo "===============================" >> ${FILE}
      /bin/echo ${CMD} >> ${FILE}
      /bin/echo "/bin/df -kt" >> ${FILE}
      /bin/echo ${RES} >> ${FILE}
      /bin/df -kt >> ${FILE}
      /bin/echo >> ${FILE}
      /bin/echo >> ${FILE}

      /bin/echo "Assetstore in (kbytes):" >> ${FILE}
      /bin/echo "======================" >> ${FILE}
      /bin/echo ${CMD} >> ${FILE}
      /bin/echo "/bin/du -ks ${DSPACE_HOME}/dspace/assetstore" >> ${FILE}
      /bin/echo ${RES} >> ${FILE}
      /bin/du -ks ${DSPACE_HOME}/dspace/assetstore >> ${FILE}
      /bin/echo >> ${FILE}
      /bin/echo >> ${FILE}

      /bin/echo "PostgreSQL data (kbytes):" >> ${FILE}
      /bin/echo "========================" >> ${FILE}
      /bin/echo ${CMD} >> ${FILE}
      /bin/echo "/bin/du -ks ${PGSQL_HOME}/pgsql/data" >> ${FILE}
      /bin/echo ${RES} >> ${FILE}
      /bin/du -ks ${PGSQL_HOME}/pgsql/data >> ${FILE}



QSpace Customizations SOP                                                                                        51
      /bin/echo >> ${FILE}
      /bin/echo >> ${FILE}

      /bin/echo "DSpace logs (kbytes):" >> ${FILE}
      /bin/echo "====================" >> ${FILE}
      /bin/echo ${CMD} >> ${FILE}
      /bin/echo "/bin/du -ks ${DSPACE_HOME}/dspace/log" >> ${FILE}
      /bin/echo ${RES} >> ${FILE}
      /bin/du -ks ${DSPACE_HOME}/dspace/log >> ${FILE}
      /bin/echo >> ${FILE}
      /bin/echo >> ${FILE}

      /bin/echo "Tomcat logs (kbytes):" >> ${FILE}
      /bin/echo "====================" >> ${FILE}
      /bin/echo ${CMD} >> ${FILE}
      /bin/echo "/bin/du -ks ${TOMCAT_HOME}/logs" >> ${FILE}
      /bin/echo ${RES} >> ${FILE}
      /bin/du -ks ${TOMC AT_HOME}/logs >> ${FILE}
      /bin/echo >> ${FILE}
      /bin/echo >> ${FILE}

      /bin/echo "PostgreSQL logs (kbytes):" >> ${FILE}
      /bin/echo "========================" >> ${FILE}
      /bin/echo ${CMD} >> ${FILE}
      /bin/echo "/bin/du -ks ${PGSQL_HOME}/logfile" >> ${FILE}
      /bin/echo ${RES} >> ${FILE}
      /bin/du -ks ${PGSQL_HOME}/logfile >> ${FILE}
      /bin/echo >> ${FILE}
      /bin/echo >> ${FILE}

      /usr/ucb/mail -s "QSPACE_DAILY_REPORT" ${EMAIL} < ${FILE}

      /bin/rm ${FILE}




QSpace Customizations SOP                                            52
           Appendix G – QSpace Daily Report (sample)
===================
QSPACE DAILY REPORT
===================


SSL Certificates:
================
Owner: CN=qspace.library.queensu.ca, OU=Library, O=Queen's University at
Kingston, L=Kingston, ST=Ontario, C=CA Valid from: Wed Sep 29 08:42:03 EDT
2004 until: Wed Sep 28 09:16:19 EDT 2005
Owner: CN=Entrust.net Secure Server Certification Authority, OU=(c) 1999
Entrust.net Limited, OU=www.entrust.net/CPS incorp. by ref. (limits liab.),
O=Entrust.net, C=US Valid from: Tue May 25 12:09:40 EDT 1999 until: Sat May
25 12:39:40 EDT 2019


Disk Usage carrick.its (kbytes):
===============================
COMMAND:
/bin/df -kt

RESULT:
Filesystem            kbytes    used   avail capacity     Mounted on
/dev/dsk/c0t2d0s0     493527 211595 232580      48%       /
/dev/dsk/c0t2d0s6    2055463 1100131 893669     56%       /usr
/proc                      0       0       0     0%       /proc
mnttab                     0       0       0     0%       /etc/mnttab
fd                         0       0       0     0%       /dev/fd
/dev/dsk/c0t2d0s1     493527 182183 261992      42%       /var
swap                 2517448     168 2517280     1%       /var/run
swap                 2518384    1104 2517280     1%       /tmp
/dev/dsk/c0t2d0s7    33306646 3838254 29135326    12%       /export/home
/export/home/usrlocal 33306646 3838254 29135326     12%      /usr/local
/export/home/csw     33306646 3838254 29135326    12%       /opt/csw


Assetstore in (kbytes):
======================
COMMAND:
/bin/du -ks /export/home/dspace/dspace/assetstore

RESULT:
170129      /export/home/dspace/dspace/assetstore


PostgreSQL data (kbytes):
========================
COMMAND:
/bin/du -ks /export/home/postgres/pgsql/data

RESULT:
106269      /export/home/postgres/pgsql/data




QSpace Customizations SOP                                                     53
DSpace logs (kbytes):
====================
COMMAND:
/bin/du -ks /export/home/dspace/dspace/log

RESULT:
517939      /export/home/dspace/dspace/log


Tomcat logs (kbytes):
====================
COMMAND:
/bin/du -ks /export/home/dspace/tomcat/jakarta-tomcat-5.0.28/logs

RESULT:
111844      /export/home/dspace/tomcat/jakarta-tomcat-5.0.28/logs


PostgreSQL logs (kbytes):
========================
COMMAND:
/bin/du -ks /export/home/postgres/logfile

RESULT:
105736      /export/home/postgres/logfile




QSpace Customizations SOP                                           54

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:2
posted:9/29/2011
language:English
pages:55