Hyrax - Customizing Hyrax
There are several ways in which Hyrax can be customized:
- Web interface look and feel can be changed, as can the pages served.
- Custom DispatchHandlers for the OLFS
- Custom RequestHandlers for the BES.
Web page customization
Hyrax's public "face" is the web pages that are produced by servlets running in the Tomcat servlet engine. Almost all of these pages can be completely customized by the site administrator by editing a combination HTML, XSLT, and CSS files.
Where to make the changes
All of the default versions of the HTML, XSLT, and CSS files come bundled with hyrax in the $CATALINA_HOME/webapps/opendap/docs directory. You can make changes there, but installing new versions of the OLFS software will overwrite your modifications.
However, if the docs directory is copied (preserving it's structure) to $CATALINA_HOME/content/opendap/ (creating the directory $CATALINA_HOME/content/opendap/docs), then Hyrax will serve the files from the new location.
- Warning
- Do NOT remove files from this new directory (Or the old one for that matter). Each file, in it's location, are required by Hyrax. You can make changes to the files but you should not rename or remove them.
Nothing inside the $CATALINA_HOME/content directory is (automatically) changed when installing new versions of Hyrax.
What to change
HTML Files
The HTML files provide the static content of a Hyrax server.
File | Location | Description | ||
index.html | $CATALINA_HOME/content/docs | The default web page for the top level of Hyrax. As shipped it contains a description of Hyrax and links to documentation and funders. | ||
error400.html | $CATALINA_HOME/content/docs | Contains the default error page that Hyrax will return for when the clients request generates a Bad Request error (Associated with an HTML status of 400) | ||
error403.html | $CATALINA_HOME/content/docs | Contains the default error page that Hyrax will return for when the clients request generates a Forbidden error. (Associated with an HTML status of 403) | ||
error404.html | $CATALINA_HOME/content/docs | Contains the default error page that Hyrax will return for when the clients request generates a Not Found error. (Associated with an HTML status of 404) | ||
error500.html | $CATALINA_HOME/content/docs | Contains the default error page that Hyrax will return for when the clients request generates an INternal Server Error. (Associated with an HTML status of 500) |
XSL Transform Files
File | Location | Description | ||
contents.xsl | $CATALINA_HOME/content/docs/xsl | The contents.xsl file contains the XSLT transformation that is used to build the OPeNDAP Directory Response (see img) | ||
error400.xsl | $CATALINA_HOME/content/docs/css | The error400.xsl contains the XSLT transformation that is used to build the web page that is returned when the server generates a Bad Request (400) HTTP status code. If for some reason this page cannot be generated then the HTML version ($CATALINA_HOME/content/docs/error400.html) will be sent. | ||
error500.xsl | $CATALINA_HOME/content/docs/css | The error400.xsl contains the XSLT transformation that is used to build the web page that is returned when the server generates a Internal Server Error (500) HTTP status code. If for some reason this page cannot be generated then the HTML version ($CATALINA_HOME/content/docs/error500.html) will be sent. |
CSS Files
File | Location | Description | ||
contents.css | $CATALINA_HOME/content/docs/css | Description | ||
thredds.css | $CATALINA_HOME/content/docs/css | Description |
Servlets
There are 3 servlets that produce the web pages for Hyrax.
hyrax servlet
The hyrax servlet produces all of the dynamically generated content. This includes all DAP responses, errors, THREDDS catalogs, and OPeNDAP directories. It uses XSLT to generate the OPeNDAP directory views and error pages. The XSL transforms are stored as files in the distribution and can be replaced to changed the way that these are formatted, and even what links and information that they contain.
docs servlet
The docs servlet serves files found in the
view servlet
The view servlet is a component of the THREDDS software that serves the NetCDF-Java tools via webstart.
The pages that are Docs Servlet
OLFS Customization
BES Customization