Versions Compared

Key

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

...

Location

Description

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="8b27dfd145938724-f8f8ac48-4f574cbe-8e58bde8-5a1b6b4cb86fa5570c6cc171"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/webui

Web UI source files

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="8046b5739042ef81-22b390b8-47474db3-a33ea247-2ded88307b5d57e29fd46518"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/filters

Servlet Filters (Servlet 2.3 spec)

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="5a6e8f91baeb4e46-5d171338-4b5d4811-b725b405-56f0d28f81f3f464054e6f5f"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/jsptag

Custom JSP tag class files

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="59a2a8a30ef8826c-9f75909e-490d484a-8f8084e2-60e4d1a4a40d4c91b17107d3"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/servlet

Servlets for main Web UI (controllers)

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="7021fe1cb7e6ef5a-3ed8394c-4858479c-a12da4f8-3f52a20bea6633f8af115e4f"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/servlet/admin

Servlets that comprise the administration part of the Web UI

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="61c2018553f71dd6-0f9ce5df-421342b7-94069eeb-4d3d1ce1c0c1087cffd1ed67"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui/dspace-jspui-api/src/main/java/org/dspace/app/webui/util/

Miscellaneous classes used by the servlets and filters

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="ac078dc9888c8360-9e1beab2-47e84653-81759990-3af869869bd89a5e93ede176"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui

The JSP files

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="a5316225d6def098-f3a04783-4265495e-bc92a0c3-941a79d3e3cd71b41e682671"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace/modules/jspui/src/main/webapp

This is where you place customized versions of JSPs—see 6. JSPUI Configuration and Customization

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="901c2f407c28c2a8-256e8373-47874594-a89dac7f-a8edaf0ea5be399dc2218cf8"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace/modules/xmlui/src/main/webapp

This is where you place customizations for the Manakin interface‚Äîsee interface‚ see 7. Manakin [DSDOC:XMLUI] Configuration and Customization

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="535bfafebd27e9fb-b05a693e-42f6435f-8ceb994b-23a13b2c9ea8e67dcec8aa5f"><ac:plain-text-body><![CDATA[

[dspace-source/dspace/modules/jspui/src/main/resources

This is where you can place you customize version of the Messages.properties file.

]]></ac:plain-text-body></ac:structured-macro>

<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="da22748480017a12-bab5304b-4cab4ed3-aeb48e19-645245f8ee8e4d43e9d2232c"><ac:plain-text-body><![CDATA[

[DSDOC:dspace-source]/dspace-jspui/dspace-jspui-webapp/src/main/webapp/WEB-INF/dspace-tags.tld

Custom DSpace JSP tag descriptor

]]></ac:plain-text-body></ac:structured-macro>

...

Wiki Markup
The DSpace Maven build process constructs a full DSpace installation template directory structure containing a series of web applications.  The results  are placed in _\[DSDOC:dspace-source\]/dspace/target/dspace-\[DSDOC:version\]-build.dir/_. The process works as follows:

  • All the DSpace source code is compiled, and/or automatically downloaded from the Maven Central code/libraries repository.
  • Wiki Markup
    A full DSpace "installation template" folder is built in {{\[DSDOC:dspace-source\]/dspace/target/dspace-\[DSDOC:version\]-build.dir/}}

Wiki Markup
In order to then install & deploy DSpace from this "installation template" folder, you must run the following from {{\[DSDOC:dspace-source\]/dspace/target/dspace-\[DSDOC:version\]-build.dir/}} :

Code Block
ant -D [dspace]/config/dspace.cfg update

...

Wiki Markup
There is an exception to this servlet/JSP style: _index.jsp_, the 'home page', receives the HTTP request directly from Tomcat without a servlet being invoked first. This is because in the servlet 2.3 specification, there is no way to map a servlet to handle only requests made to '_/_'; such a mapping results in every request being directed to that servlet. By default, Tomcat forwards requests to '_/_' to _index.jsp_. To try and make things as clean as possible, _index.jsp_ contains some simple code that would normally go in a servlet, and then forwards to _home.jsp_ using the _JSPManager.showJSP_ method. This means localized versions of the 'home page' can be created by placing a customized _home.jsp_ in _\[DSDOC:dspace-source\]/jsp/local_, in the same manner as other JSPs.

Wiki Markup
_\[DSDOC:dspace-source\]/jsp/dspace-admin/index.jsp_, the administration UI index page, is invoked directly by Tomcat and not through a servlet for similar reasons.

...

Wiki Markup
The DSpace build process builds a Web application archive, _\[DSDOC:dspace-source\]/build/oai.war_), in much the same way as the Web UI build process described above. The only differences are that the JSPs are not included, and _\[DSDOC:dspace-source\]/etc/oai-web.xml_ is used as the deployment descriptor. This 'webapp' is deployed to receive and respond to OAI-PMH requests via HTTP. Note that typically it should _not_ be deployed on SSL (_https:_ protocol). In a typical configuration, this is deployed at _oai_, for example:

...

Wiki Markup
It is this URL that should be registered with [www.openarchives.org|http://www.openarchives.org/|www.openarchives.org]. Note that you can easily change the '_request_' portion of the URL by editing _\[DSDOC:dspace-source\]/etc/oai-web.xml_ and rebuilding and deploying _oai.war_.

...

  • Wiki Markup
    *oaicat.properties*: This file resides in {{\[DSDOC:dspace\]/config}}. You probably won't need to edit this, as it is pre-configured to meet most needs. You might want to change the {{Identify.earliestDatestamp}} field to more accurately reflect the oldest datestamp in your local DSpace system. (Note that this is the value of the {{last_modified}} column in the {{Item}} database table.)

...

Wiki Markup
Prior to Release 1.6, there were various scripts written that masked a more manual approach to running CLI programs.  The user had to issue _\[DSDOC:dspace\]/bin/dsrun_ and then java class that ran that program.  With release 1.5, scripts were written to mask the _\[DSDOC:dspace\]/bin/dsrun_ command.  We have left the java class in the System Administration section since it does have value for debugging purposes and for those who wish to learn about DSpace
programming or wish to customize the code at any time.

...

Wiki Markup
There are two components to the command launcher:  the dspace script and the launcher.xml.  The DSpace command calls a java class which in turn refers to _launcher.xml_ that is stored in the _\[DSDOC:dspace\]/config_ directory

...

  • <command> begins the stanza for a command
  • <name>_name of command_</name> the name of the command that you would use.
  • <description>_the description of the command_</description>
  • <step> </step> User arguments are parsed and tested.
  • <class>_<the java class that is being used to run the CLI program>_</class>
    Prior to release 1.5 if one wanted to regenerate the browse index, one would have to issue the following commands manually:
    Code Block
    [dspace]/bin/dsrun org.dspace.browse.IndexBrowse -f -r
    [dspace]/bin/dsrun org.dspace.browse.ItemCounter
    [dspace]/bin/dsrun org.dspace.search.DSIndexer
    Wiki Markup
    In release 1.5 a script was written and in release 1.6 the command _\[DSDOC:dspace\]/bin/dspace index-init_ replaces the script.  The stanza from _launcher.xml_ show us how one can build more commands if needed:
    Code Block
    <command>
            <name>index-update</name>
            <description>Update the search and browse indexes</description>
            <step passuserargs="false">
                <class>org.dspace.browse.IndexBrowse</class>
                <argument>-i</argument>
            </step>
            <step passuserargs="false">
                <class>org.dspace.browse.ItemCounter</class>
            </step>
            <step passuserargs="false">
                <class>org.dspace.search.DSIndexer</class>
            </step>
    </command>
    .