Moving changes I made in the trunk since the branch was created. I'll work out of here forward.

This commit is contained in:
ejc12 2011-01-16 01:05:11 +00:00
parent 524d75af97
commit b1ef3ae3a9
4 changed files with 508 additions and 648 deletions

View file

@ -21,7 +21,7 @@ body{
padding: 0; padding: 0;
height: 100%; /* needed for container min-height */ height: 100%; /* needed for container min-height */
font-family: 'Arimo', "Lucida Sans Unicode","Lucida Grande", Geneva, helvetica, sans-serif; font-family: 'Arimo', "Lucida Sans Unicode","Lucida Grande", Geneva, helvetica, sans-serif;
/*font-size: 62.5%;*/ font-size: 1em;
height: auto !important; /* real browsers */ height: auto !important; /* real browsers */
height: 100%; /* IE6: treaded as min-height*/; height: 100%; /* IE6: treaded as min-height*/;
min-height: 100%; /* real browsers */ min-height: 100%; /* real browsers */
@ -31,10 +31,15 @@ body{
background: #f3f3f0 url(../images/header-background.png) center 0 no-repeat; background: #f3f3f0 url(../images/header-background.png) center 0 no-repeat;
} }
/* h1,h2,h3,h4,h5,h6 ------> */ /* h1,h2,h3,h4,h5,h6 ------> */
h2{ h1 {
padding: 10px 0 12px 0; padding: 8px 0 6px 0;
margin: 0; margin: 0;
font-size: 22px; font-size: 1.5em;
}
h2 {
padding: 8px 0 6px 0;
margin: 0;
font-size: 1.4em;
color: #2485ae; color: #2485ae;
} }
h2 a{ h2 a{
@ -47,21 +52,21 @@ h2 a:hover, h2 a:active{
text-decoration: none; text-decoration: none;
} }
h3{ h3{
padding: 10px 0 12px 0; padding: 8px 0 6px 0;
margin: 0; margin: 0;
font-size: 18px; font-size: 1.2m;
color: #2485ae; color: #2485ae;
} }
h4{ h4{
padding: 10px 0 12px 0; padding: 4px 0 4px 0;
margin: 0; margin: 0;
font-size: 16px; font-size: 1.1em;
color: #2485ae; color: #000000;
} }
h5{ h5{
padding: 10px 0 12px 0; padding: 3px 0 2px 0;
margin: 0; margin: 0;
font-size: 14px; font-size: 1em;
color: #2485ae; color: #2485ae;
} }
@ -75,6 +80,16 @@ a:visited {
color: #5e6363; color: #5e6363;
} }
code, pre {
font-size: 1.1em;
}
blockquote {
padding: 5px;
font-size: .9em;
background-color: #EEEEEE;
}
/* HEADER ------> */ /* HEADER ------> */
#branding { #branding {
position: relative; position: relative;
@ -110,7 +125,6 @@ h1.vivo-logo a {
/* TOC -------> */ /* TOC -------> */
ol { ol {
list-style-type: upper-roman;
margin: 0 0 10px 10px; margin: 0 0 10px 10px;
} }
@ -225,4 +239,12 @@ p{
.displace { .displace {
position: absolute; position: absolute;
left: -9999px; left: -9999px;
} }
ol.roman1 {
list-style-type: upper-roman;
}
ol.roman2 {
list-style-type: lower-roman;
}

365
doc/html/upgrade-1.2.html Normal file
View file

@ -0,0 +1,365 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>VIVO</title>
<link rel="stylesheet" href="../css/doc.css" />
</head>
<body>
<header id="branding" role="banner">
<h1 class="vivo-logo"><a href="/"><span class="displace">VIVO</span></a></h1>
</header>
<!-- Start of content -->
<div id="wrapper-content" role="main">
<h1>VIVO Release 1 v1.2 Upgrade Guide</h1>
<small>January 28, 2011 - Upgrading from Release 1 v1.1 to Release 1 v1.2</small>
<blockquote>
<b>Missing pieces and fixes</b>
<ul>
<li>
Link to install pdf online at SF
</li>
<li>
</li>
<li>
</li>
</ul>
</blockquote>
<toc>
<ul>
<li>
<a href="#announcement">Release announcement for V1.2</a>
</li>
<li>
<a href="#upgrade">Upgrade process for V1.2</a>
</li>
</ul>
</toc>
<p>
This document provides a short description of the steps involved in upgrading your
installation of VIVO from Release 1, Version 1.1 to Version 1.2. This and other
documentation can be found on the <a href="http://vivoweb.org/support">support page</a>
at <a href="http://vivoweb.org">VIVOweb.org</a>
</p>
<p>
If you need to do a fresh install, please consult
<a href="VIVO_Release-1-v1.2_Installation_Guide.pdf">VIVO Release 1 v1.2 Installation Guide</a>
or the install.html file located in the
<code>
doc
</code>
directoy of the VIVO source code distribution.
</p>
<!-- Release Announcement --><h2 id="announcement">Release anouncement for V1.2</h2>
<p>
Text from the wiki page
</p>
<!-- Upgrade process for V1.2 --><h2 id="upgrade">Upgrade process for V1.2</h2>
</p>
<toc>
<ol class="roman1">
<li>
<a href="#preparation">Before Performing the Upgrade</a>
</li>
<li>
<a href="#upgrade_process">The Upgrade Process</a>
</li>
<li>
<a href="#ontology">Ontology Upgrade</a>
</li>
<ol class="roman2">
<li>
<a href="#verify_ontology_upgrade">Verify Ontology upgrade process</a>
</li>
<li>
<a href="#ontology_knowledge_base">Ontology knowledge base manual review</a>
</li>
</ol>
<li>
<a href="#theme">Theme Modifications</a>
</li>
</ol>
</toc>
<h3 id="preparation">I. Before Performing the Upgrade</h3>
<p>
Please ensure that backups are created of the:
</p>
<ul style="list-style-type:square;">
<li>
Tomcat webapps directory
</li>
<li>
Original source directory
</li>
<li>
MySQL database (mysqldump)
</li>
</ul>
<p>
The upgrade process is similar to the original install process with the following
EXCEPTIONS:
</p>
<ul>
<li>
DO NOT reinstall MySQL or recreate the MySQL database. Please ensure that
you back-up the MySQL database.
</li>
<li>
It is not necessary to add RDF data.
</li>
<li>
First-time login of the administrator account after the upgrade process is
complete will use the password previously set, NOT the default password used
on the first login after the initial installation.
</li>
<li>
The first time Apache Tomcat starts up after the upgrade, it will initiate a process
that modifies the knowledge base to align the data with the revised ontology. See the
section on the <a href="ontology">Ontology Upgrade</a>
below for more information.
</li>
</ul>
<h3 id="upgrade_process">The Upgrade Process</h3>
<ol class="arabic">
<li>
Download the new distribution file and unpack it into a new source
directory.
</li>
<li>
Create deploy.properties, using the same values as in your previous
installation and set values for the new variables.
</li>
<li>
Apply any previous changes you have made to the new source directory.
<blockquote>
<strong>Special notes regarding source files</strong>
<ul>
<li>
This process assumes any changes made to the application were made in
the source directory and deployed, and were not made directly within
the Tomcat webapps directory.
</li>
<li> In many cases, simply copying the modified files from your original
source directory will not work since the files on which they are based
have changed. It will be necessary to inspect the new source files and
add any changes to them at that time.</li>
<li>
NIH-funded VIVO Implmentations will need to apply the Google Analytics Tracking
Code (GATC) to
<code>
googleAnalytics.ftl
</code>
in the theme:<pre>[new_source_directory]/themes/[theme_dir]/templates/googleAnalytics.ftl</pre>
A sample
<code>
googleAnalytics.ftl
</code>
is included in the built-in theme. This file
serves only as an example, and you must replace the tracking code shown
with your institution's own tracking code.
For additional information about the GATC for the NIH-funded VIVO
implementation sites and a copy your institution's tracking code, see the
<a href="https://confluence.cornell.edu/display/ennsrd/Google+Analytics+for+UI">VIVO Google Analytics wiki page</a>.
</li>
<li>
If you had used the <code>vivo/contrib/FLShibboleth</code> code in your previous release,
you should stop using it. Consult <code>install.html</code> or <a href="VIVO_Release-1-v1.2_Installation_Guide.pdf">VIVO Release 1 v1.2 Installation Guide</a>
on "Using an External Authentication System with VIVO".
</li>
</ul>
</blockquote>
</li>
<li>
If you had modified
<code>
web.xml
</code>
to configure the Pellet Reasoner (as described
in the installation instructions), repeat that modification.
</li>
<li>
Stop Apache Tomcat and run ant by typing:
<code>
ant all
</code>
</li>
<li>
Start Apache Tomcat and log in to VIVO.
</li>
</ol>
<!-- TO BE FORMATTED --><pre>
-------------------------------------------------------------------------------
III. Ontology Changes
A. Verify Ontology upgrade process
After Apache Tomcat is started, these files should be reviewed to verify that
the automated upgrade process was executed successfully. The ontology alignment
process will create the following files in the Tomcat webapps/vivo/WEB-INF directory:
ontologies/update/logs/knowledgeBaseUpdate.log
A log of a summary of updates that were made to the knowledge base and notes
about some recommended manual reviews. This file should end with
"Successfully finished processing ontology changes".
ontologies/update/logs/knowledgeBaseUpdate.error.log
A log of errors that were encountered during the upgrade process. This file
should be empty if the upgrade was successful.
ontologies/update/changedData/removedData.n3
An N3 file containing all the statements that were removed from the knowledge base.
ontologies/update/changedData/addedData.n3
An N3 file containing all the statements that were added to the knowledge base.
B. Ontology knowledge base manual review
Changes to the VIVO core ontology may require corresponding
modifications of the knowledge base instance data and local ontology
extensions.
When Apache Tomcat starts up following the upgrade, it will initiate
a process to examine the knowledge base and apply necessary changes.
Not all of the modifications that may be required can be automated,
so manual review of the knowledge base is recommended after the
automated upgrade process. The automated process will make only
the following types of changes:
Class or Property renaming
All references to the class (in the subject or object position) will
be updated to the new name. References to the property will be
updated to the new name.
Class or Property deletion
All individuals in a deleted class will be removed.
All statements using a deleted property will be changed
to use the nearest available superproperty. If there is no available
superproperty then the statement will be deleted from the
knowledge base. Note that all removed and added data
is recorded in the files in the changedData directory.
Property addition
If a newly added property is the inverse of a previously
existing property, the inverse of any statements using the
pre-existing property will be asserted.
Annotation property default values
If a site has modified the value of a vitro annotation (such as
displayRankAnnot or displayLimitAnnot) so that it is
no longer using the default, then that setting will be left unchanged.
If a site is using the default value of a vitro annotation, and the
default has been changed in the new version of the ontology, then
the new default value will be propagated to the knowledge base.
-------------------------------------------------------------------------------
IV. Theme Changes
VIVO 1.1 introduces the first step in a transition from JavaServer Pages (JSPs)
to the FreeMarker template engine for generating web pages. As part of this
process, the JSP files that were used for theme customization in earlier
versions of VIVO have been replaced by a set of FreeMarker templates.
In the 1.1 install package, these files are located in
/vivo/themes/vivo-basic/templates and have an ftl (for FreeMarker Template
Language) extension.
Follow step A or B below, whichever is applicable to your site:
A. If you did not create a customized theme for your site in VIVO 1.0, but used
the 1.0 vivo-basic theme in its original directory, you need not take any
action in order to convert your site to the VIVO 1.1 theme.
B. If you created your own theme directory in VIVO 1.0, follow the steps below
under sections "Templates," "Stylesheets," and "Site Icons" to upgrade your
theme to VIVO 1.1.
1. Templates
a. Copy the directory /vivo/themes/vivo-basic/templates into your theme
directory /vivo/themes/<your-theme-name>.
b. Follow step i or ii below, whichever is applicable to your theme.
i. If you did not apply any customizations to the JSPs in your VIVO
1.0 theme, then you do not need to apply any additional changes
to the VIVO 1.1 theme templates during the upgrade process.
ii. If you did apply customizations to the JSPs in your VIVO 1.0
theme,you will need to hand-replicate those modifications in the
new theme template files.
The theme template content that was previously contained in
three JSP files is now contained in five FTL files. The
correspondence between the 1.0 JSPs and the 1.1 FTLs is as
follows:
identity.jsp => identity.ftl
menu.jsp => menu.ftl and search.ftl
footer.jsp => footer.ftl and googleAnalytics.ftl
googleAnalytics.ftl is a new file to which you will add
your site's Google Analytics Tracking Code (see section II).
Because the FreeMarker Template Language uses many syntactic
conventions that will be familiar to template authors from JSP
or other common templating systems, the translation of your JSP
changes into the new FTLs should be relatively straightforward.
Consult the FreeMarker Template Author's Guide at
http://freemarker.org/docs/dgui.html and the Reference at
http://freemarker.org/docs/ref.html for complete documentation
of the syntax and available built-in constructs. Template
authors need not be concerned with the Programmer's Guide or
Java API documentation.
c. Remove the jsp directory from your themes directory.
2. Stylesheets
VIVO 1.1 includes changes to vivo-basic stylesheets. If you modified
styles in your VIVO 1.0 theme, you will not be able to simply copy the
1.0 stylesheets into your 1.1 theme, because you will then lose 1.1
style upgrades that your theme should pick up. Instead, you should
use the vivo-basic 1.1 stylesheets as a starting point, and manually
merge your 1.0 style modifications in as needed.
3. Site Icons
Copy the site icons from your 1.0 theme into the site_icons folder in
your 1.1 theme.
</pre>
</div>
<!-- end of content -->
<footer role="contentinfo">
<p class="copyright">
<small>
&copy;2011
All Rights Reserved | <a class="terms" href="/termsOfUse">Terms of Use</a>
</small>
| Powered by <a class="powered-by-vivo" href="http://vivoweb.org" target="_blank"><strong>VIVO</strong></a>
</p>
<nav role="navigation">
<ul id="footer-nav" role="list">
<li role="listitem">
<a href="http://vivoweb.org/about">About</a>
</li>
<li role="listitem">
<a href="http://vivoweb.org/contact">Contact Us</a>
</li>
<li role="listitem">
<a href="http://www.vivoweb.org/support" target="blank">Support</a>
</li>
</ul>
</nav>
</footer>
</body>
</html>

View file

@ -12,17 +12,17 @@
<!-- Start of content --> <!-- Start of content -->
<div id="wrapper-content" role="main"> <div id="wrapper-content" role="main">
<h1>VIVO Release 1 V1.2 Installation Guide</h1> <h1>VIVO Release 1 V1.2 Installation Guide</h1>
<small>
January 28, 2011
</small>
<div style="background: #EEEEEE"> <div style="background: #EEEEEE">
<b>Missing pieces and fixes</b> <b>Missing pieces and fixes</b>
<ul> <ul>
<li> <li>
SDB - any checks? (BL/SM) Add release announcemnet
</li> </li>
<li> <li>
Theme changes, file locations, branding issues (NC/MB) Link to upgrade pdf online at SF
</li>
<li>
Fix styles on file, dir, parameters name styles
</li> </li>
</ul> </ul>
</div> </div>
@ -43,7 +43,7 @@
<!-- Installation process for V1.2 --><h2 id="installation">Installation process for V1.2</h2> <!-- Installation process for V1.2 --><h2 id="installation">Installation process for V1.2</h2>
<p> <p>
This document is a summary of the VIVO installation process. This and other This document is a summary of the VIVO installation process. This and other
documentation can be found on the <a href="http://vivoweb.org/support">spport page</a> documentation can be found on the <a href="http://vivoweb.org/support">support page</a>
at <a href="http://vivoweb.org">VIVOweb.org</a> at <a href="http://vivoweb.org">VIVOweb.org</a>
</p> </p>
<ul> <ul>
@ -64,7 +64,7 @@
</p> </p>
<toc> <toc>
<h3>Steps to Installation</h3> <h3>Steps to Installation</h3>
<ol> <ol class="roman1">
<li> <li>
<a href="#required_software">Install required software</a> <a href="#required_software">Install required software</a>
</li> </li>
@ -127,19 +127,20 @@
</li> </li>
</ul> </ul>
<p> <p>
Be sure to setup the environment variables for "JAVA_HOME" and "ANT_HOME" Be sure to setup the environment variables for <code JAVA_HOME</code>
and <code>ANT_HOME</code>
and add the executables to your path per your operating system and and add the executables to your path per your operating system and
installation directions from the software support web sites. installation directions from the software support web sites.
</p> </p>
<h3 id="create_database">II. Create an empty MySQL database </h3> <h3 id="create_database">II. Create an empty MySQL database </h3>
<p> <p>
Decide on a database name, username, and password. Log into your Decide on a database name, username, and password. Log into your
MySQL server and create a new database in MySQL that uses UTF-8 MySQL server and create a new database in MySQL that uses <code>UTF-8
encoding. You will need&nbsp; these values for step IV when you encoding</code>. You will need these values for Step IV when you
configure the deployment properties. At the MySQL command line you can configure the deployment properties. At the MySQL command line you can
create the database and user with these commands&nbsp; substituting create the database and user with these commands substituting
your values for "dbname", "username", and "password". Most of the time, your values for <code>dbname</code>, <code>username</code>, and <code>password</code>. Most of the time,
the "hostname" will equal "localhost". the hostname will equal <code>localhost</code>.
</p> </p>
<pre> <pre>
CREATE DATABASE dbname CHARACTER SET utf8; CREATE DATABASE dbname CHARACTER SET utf8;
@ -158,29 +159,29 @@
<br> <br>
</h3> </h3>
<p> <p>
Download the VIVO application source as either rel-1.1.1.zip or Download the VIVO application source as either <code>rel-1.2.zip</code>
rel-1.1.1.gz file and unpack it on your web or <code>rel-1.2.gz</code>
server: file and unpack it on your web server:
<br/> <br/>
<a href="http://vivoweb.org/download">http://vivoweb.org/download</a> <a href="http://vivoweb.org/download">http://vivoweb.org/download</a>
</p> </p>
<h3 id="deploy_properties">IV. Specify deployment properties </h3> <h3 id="deploy_properties">IV. Specify deployment properties </h3>
<p> <p>
At the top level of the unpacked distribution, copy the file At the top level of the unpacked distribution, copy the file <code>example.deploy.properties</code>
"example.deploy.properties" to a file named simply "deploy.properties". to a file named simply <code>deploy.properties</code>.
This file sets several properties used in compilation and deployment. This file sets several properties used in compilation and deployment.
</p> </p>
<p> <p>
<em>Windows:</em> <em>Windows:</em>
For those installing on Windows operating system, include the For those installing on Windows operating system, include the
windows drive and use the forward slash "/" and not the back slash "\" windows drive and use the forward slash "/" and not the back slash "\"
in the directory locations, e.g. "c:/tomcat". in the directory locations, e.g. <code>c:/tomcat</code>.
</p> </p>
<p> <p>
<em>External authentication:</em> <em>External authentication:</em>
If you want to use an external authentication system like Shibboleth or If you want to use an external authentication system like Shibboleth or
CUWebAuth, you will need to set two additional properties in this file. CUWebAuth, you will need to set two additional properties in this file.
See the section below entitled "Using an External Authentication System with VIVO". See the section below entitled <a href="#external_auth">Using an External Authentication System with VIVO</a>.
</p> </p>
<table> <table>
<tr> <tr>
@ -196,14 +197,12 @@
Default namespace: VIVO installations make their RDF resources available Default namespace: VIVO installations make their RDF resources available
for harvest using linked data. Requests for RDF resource URIs redirect to HTML for harvest using linked data. Requests for RDF resource URIs redirect to HTML
or RDF representations as specified by the client. To make this possible, or RDF representations as specified by the client. To make this possible,
VIVO's default namespace must have certain structure and begin with the public VIVO's default namespace must have certain structure and begin with the public
web address of the VIVO installation. For example, if the web address of a VIVO web address of the VIVO installation. For example, if the web address of a VIVO
installation is "http://vivo.example.edu/" the default namespace must be set to installation is "http://vivo.example.edu/" the default namespace must be set to
"http://vivo.example.edu/individual/" in order to support linked data. Similarly, "http://vivo.example.edu/individual/" in order to support linked data. Similarly,
if VIVO is installed at "http://www.example.edu/vivo" the default namespace must be if VIVO is installed at "http://www.example.edu/vivo" the default namespace must be
set to "http://www.example.edu/vivo/individual/" set to "http://www.example.edu/vivo/individual/" <h5>* The namespace must end with "individual/" (including the trailing slash).</h5>
<br/>
<strong>* The namespace must end with "individual/" (including the trailing slash).</strong>
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -385,9 +384,9 @@
<tr> <tr>
<td colspan="2"> <td colspan="2">
Change the dbtype setting to use a database other than MySQL. Change the dbtype setting to use a database other than MySQL.
Otherwise, leave this value unchanged. Otherwise, leave this value unchanged.
Possible values are DB2, derby, HSQLDB, H2, MySQL, Oracle, Possible values are DB2, derby, HSQLDB, H2, MySQL, Oracle,
PostgreSQL, and SQLServer. PostgreSQL, and SQLServer.
Refer to http://openjena.org/wiki/SDB/Databases_Supported Refer to http://openjena.org/wiki/SDB/Databases_Supported
for additional information. for additional information.
</td> </td>
@ -402,8 +401,8 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Specify a driver class name to use a database other than MySQL. Specify a driver class name to use a database other than MySQL.
Otherwise, leave this value unchanged. Otherwise, leave this value unchanged.
This JAR file for this driver must be added to the the This JAR file for this driver must be added to the the
webapp/lib directory within the vitro.core.dir specified above. webapp/lib directory within the vitro.core.dir specified above.
</td> </td>
@ -498,8 +497,7 @@
in order to serve Web requests quickly (the in-memory copy and the in order to serve Web requests quickly (the in-memory copy and the
underlying databaseare kept in synch as edits are performed). underlying databaseare kept in synch as edits are performed).
<p> <p>
VIVO will VIVO will require more memory than that allocated to Tomcat by default. With most
require more memory than that allocated to Tomcat by default. With most
installations of Tomcat, the "setenv.sh" or "setenv.bat" file in Tomcat's installations of Tomcat, the "setenv.sh" or "setenv.bat" file in Tomcat's
bin directory is a convenient place to set the memory parameters. bin directory is a convenient place to set the memory parameters.
<br/> <br/>
@ -517,16 +515,14 @@
data, 256m to 512m should be sufficient. data, 256m to 512m should be sufficient.
</p> </p>
<p> <p>
If an OutOfMemoryError is If an OutOfMemoryError is encountered during VIVO execution, it can
encountered during VIVO execution, it can be remedied by increasing the be remedied by increasing the heap parameters and restarting Tomcat.
heap parameters and restarting Tomcat.
</p> </p>
<p> <p>
Security limits: VIVO is a Security limits: VIVO is a multithreaded web application that may
multithreaded web application that may require more threads than are require more threads than are permitted under your Linux installation's
permitted under your Linux installation's default configuration. Ensure default configuration. Ensure that your installation can support the
that your installation can support the required number of threads required number of threads by making the following edits to <code>/etc/security/limits.conf</code>:
by making the following edits to "/etc/security/limits.conf":
</p> </p>
<pre> <pre>
apache hard nproc 400 apache hard nproc 400
@ -534,18 +530,19 @@
</pre> </pre>
<h3 id="start_tomcat">VII. Start Tomcat </h3> <h3 id="start_tomcat">VII. Start Tomcat </h3>
<p> <p>
Most Tomcat installations can be started by running "startup.sh" or Most Tomcat installations can be started by running <code>startup.sh</code>
"startup.bat" in Tomcat's bin directory. Point your browser to or <code>startup.bat</code>
"http://localhost:8080/vivo/" to test the application. If Tomcat does not in Tomcat's bin directory. Point your browser to
start up, or the VIVO application is not visible, check the "http://localhost:8080/vivo/" to test the application. If Tomcat does not
catalina.out file in Tomcat's logs directory. start up, or the VIVO application is not visible, check the <code>catalina.out</code>
file in Tomcat's logs directory.
</p> </p>
<h3 id="add_rdf">VIII. Log in and add RDF data </h3> <h3 id="add_rdf">VIII. Log in and add RDF data </h3>
<p> <p>
If the startup was successful, you will see a welcome message If the startup was successful, you will see a welcome message
informing you that you have successfully installed VIVO. Click the "Log in" link informing you that you have successfully installed VIVO. Click the "Log in" link
near the upper right corner. Log in with the <em>initialAdminUser</em> near the upper right corner. Log in with the <code>initialAdminUser</code>
username you set up in Step IV. The initial password for the <em>initialAdminUser</em> username you set up in Step IV. The initial password for the <code>initialAdminUser</code>
account is "defaultAdmin" (without the quotes). On first login, you will be account is "defaultAdmin" (without the quotes). On first login, you will be
prompted to select a new password and verify it a second time. prompted to select a new password and verify it a second time.
</p> </p>
@ -580,7 +577,7 @@
<h3 id="contact_email">IX. Set the Contact Email Address (if using "Contact Us" form)</h3> <h3 id="contact_email">IX. Set the Contact Email Address (if using "Contact Us" form)</h3>
<p> <p>
If you have configured your application to use the "Contact Us" If you have configured your application to use the "Contact Us"
feature in Step IV (<em>Vitro.smtpHost</em>), you will also need to add an email address feature in Step IV (<code>Vitro.smtpHost</code>), you will also need to add an email address
to the VIVO application.&nbsp; This is the email that the contact form to the VIVO application.&nbsp; This is the email that the contact form
submits to. It can be a list server or an individual's submits to. It can be a list server or an individual's
email address. email address.
@ -588,12 +585,12 @@
<p> <p>
Log in as a system administrator. Navigate to the Log in as a system administrator. Navigate to the
"Site Admin" table of contents (link in the right side of the header). "Site Admin" table of contents (link in the right side of the header).
Go to "Site Information" (under "Site Configuration").&nbsp; In the Go to "Site Information" (under "Site Configuration"). In the
"Site Information Editing Form," enter a functional email address in "Site Information Editing Form," enter a functional email address in
the field "Contact Email Address." and submit the change. the field "Contact Email Address." and submit the change.
</p> </p>
<p> <p>
If you set the<em>Vitro.smtpHost</em> If you set the<code>Vitro.smtpHost</code>
in Step IV and do NOT provide an email addressin this in Step IV and do NOT provide an email addressin this
step, your users will receive a java error in the interface. step, your users will receive a java error in the interface.
</p> </p>
@ -610,14 +607,13 @@
</p> </p>
<p> <p>
Using the mod_jk connector allows for communication between Tomcat Using the mod_jk connector allows for communication between Tomcat
and the primary web server. The <a href="http://tomcat.apache.org/connectors-doc/generic_howto/quick.html">Quick and the primary web server. The <a href="http://tomcat.apache.org/connectors-doc/generic_howto/quick.html">Quick Start HowTo</a>
Start HowTo</a>
on the Apache site describes the minimum server configurations on the Apache site describes the minimum server configurations
for several popular web servers. for several popular web servers.
</p> </p>
<p> <p>
After setting up the mod_jk connector above, you will need to After setting up the mod_jk connector above, you will need to
modify the Tomcat's server.xml ([tomcat root]/conf/) to respond to modify the Tomcat's server.xml (located in <code>[tomcat root]/conf/</code>) to respond to
requests from Apache via the connector. Look for the requests from Apache via the connector. Look for the
&lt;connector&gt; directive and add the following properties: &lt;connector&gt; directive and add the following properties:
</p> </p>
@ -626,13 +622,15 @@
</pre> </pre>
<p> <p>
Note: the value for maxThreads (320) is equal to the value for MaxClients Note: the value for maxThreads (320) is equal to the value for MaxClients
in the apache's "httpd.conf" file. in the apache's <code>httpd.conf</code>
file.
</p> </p>
<p> <p>
Locate the &lt;Host name="localhost"...&gt; directive and update as Locate the <code>&lt;Host name="localhost"...&gt;</code>
directive and update as
follows: follows:
</p> </p>
<!-- ELLY IS WORKING HERE. --><pre> <pre>
&lt;Host name="localhost" appBase="webapps" &lt;Host name="localhost" appBase="webapps"
DeployOnStartup="false" DeployOnStartup="false"
unpackWARs="true" autoDeploy="false" unpackWARs="true" autoDeploy="false"
@ -666,9 +664,9 @@
<p> <p>
By default, Pellet is fed only an incomplete view of By default, Pellet is fed only an incomplete view of
your ontology and only certain inferences are materialized. These your ontology and only certain inferences are materialized. These
include rdf:type,&nbsp; rdfs:subClassOf,owl:equivalentClass, and include rdf:type, rdfs:subClassOf, owl:equivalentClass, and
owl:disjointWith. This mode is typically suitable for ontologies with a owl:disjointWith. This mode is typically suitable for ontologies with a
lot of instance data.&nbsp; If you would like to keep the default mode, lot of instance data. If you would like to keep the default mode,
skip to the next step. skip to the next step.
</p> </p>
<p> <p>
@ -679,19 +677,17 @@
<p> <p>
Then change the name of the listener class to Then change the name of the listener class to
PelletReasonerSetupComplete. Because "complete" reasoning can be very PelletReasonerSetupComplete. Because "complete" reasoning can be very
resource intensive, there is also an&nbsp; option to materialize nearly resource intensive, there is also an option to materialize nearly
all inferences except owl:sameAs and owl:differentFrom. all inferences except owl:sameAs and owl:differentFrom.
</p> </p>
<p> <p>
This is enabled This is enabled by specifying PelletReasonerSetupPseudocomplete. For ontologies
by specifying PelletReasonerSetupPseudocomplete. For ontologies with with large numbers of individuals, this mode can offer enormous performance
large numbers of individuals, this mode can offer enormous performance
improvements over the "complete" mode. improvements over the "complete" mode.
</p> </p>
<p> <p>
Finally, a class called Finally, a class called PelletReasonerSetupPseudocompleteIgnoreDataproperties
PelletReasonerSetupPseudocompleteIgnoreDataproperties is provided to is provided to improve performance on ontologies with large literals where data
improve performance on ontologies with large literals where data
property entailments are not needed. property entailments are not needed.
</p> </p>
</p> </p>
@ -721,10 +717,7 @@
external authentication system. external authentication system.
</p> </p>
<p> <p>
For VIVO, this secured page is named: For VIVO, this secured page is named: <code>/loginExternalAuthReturn</code>
<code>
/loginExternalAuthReturn
</code>
</p> </p>
<p> <p>
When your instructions call for the location of the secured page, this is the When your instructions call for the location of the secured page, this is the
@ -732,40 +725,49 @@
</p> </p>
<h4>Configuring VIVO</h4> <h4>Configuring VIVO</h4>
<p> <p>
To enable external authentication, VIVO requires three values in the To enable external authentication, VIVO requires three values in the <code>deploy.properties</code>
deploy.properties file. file.
</p> </p>
<ul> <ul>
<li> <li>
The name of the HTTP header that will hold the external users network ID <h5>The name of the HTTP header that will hold the external user's network ID.</h5>
When a user completes the authentication process, the Apache server will When a user completes the authentication process, the Apache server will
put the users network ID into one of the headers of the HTTP request. put the user's network ID into one of the headers of the HTTP request.
The instructions from your institution should tell you which header is The instructions from your institution should tell you which header is
used for this purpose. used for this purpose.
You need to tell VIVO the name of that HTTP header. Insert a line like <p>
this in the deploy.properties file: <pre>externalAuth.netIdHeaderName = [the header name]</pre> You need to tell VIVO the name of that HTTP header. Insert a line like
For example: <pre>externalAuth.netIdHeaderName = remote_userID</pre> this in the deploy.properties file: <pre>externalAuth.netIdHeaderName = [the header name]</pre>
For example:
</p>
<pre>externalAuth.netIdHeaderName = remote_userID</pre>
</li> </li>
<li> <li>
The text for the Login button <h5>The text for the Login button.</h5>
To start the authentication process, the user will click on a button in To start the authentication process, the user will click on a button in
the VIVO login form. You need to tell VIVO what text should appear in that the VIVO login form. You need to tell VIVO what text should appear in that
button. button.
Put a line like this in the deploy.properties file: <p>
externalAuth.buttonText = [the text for your login button] Put a line like this in the deploy.properties file:
For example: <pre>externalAuth.buttonText = Log in using BearCat Shibboleth</pre> externalAuth.buttonText = [the text for your login button]
The VIVO login form will display a button labelled “Log in using BearCat For example:
Shibboleth”. </p>
<pre>externalAuth.buttonText = Log in using BearCat Shibboleth</pre>
The VIVO login form will display a button labelled "Log in using BearCat
Shibboleth".
</li> </li>
<li> <li>
Associating a User with a profile page <h5>Associating a User with a profile page</h5>
If VIVO has an account for the user, the user will be given the privileges If VIVO has an account for the user, the user will be given the privileges
assigned to that account. assigned to that account.
In addition, VIVO will try to associate the user with a profile page, so <p>
the user may edit his own profile data. VIVO will search the data model In addition, VIVO will try to associate the user with a profile page, so
for a person with a property that matches the Users network ID. the user may edit his own profile data. VIVO will search the data model
You need to tell VIVO what property should be used for matching. Insert for a person with a property that matches the Users network ID.
a line like this in the deploy.properties file:<pre>selfEditing.idMatchingProperty = [the URI of the property]</pre> You need to tell VIVO what property should be used for matching. Insert
a line like this in the deploy.properties file:
</p>
<pre>selfEditing.idMatchingProperty = [the URI of the property]</pre>
For example:<pre>selfEditing.idMatchingProperty = http://vivo.mydomain.edu/ns#networkId</pre> For example:<pre>selfEditing.idMatchingProperty = http://vivo.mydomain.edu/ns#networkId</pre>
</li> </li>
</ul> </ul>
@ -808,7 +810,8 @@
<ul> <ul>
<li> <li>
Point your browser to the home page of your website, and click the "Log in" link Point your browser to the home page of your website, and click the "Log in" link
near the upper right corner. Log in with the initialAdminUser username you near the upper right corner. Log in with the <code>initialAdminUser</code>
username you
set up in Step IV. If this is your first time logging in, you will be set up in Step IV. If this is your first time logging in, you will be
prompted to change the password. prompted to change the password.
</li> </li>
@ -824,7 +827,7 @@
the next step. the next step.
</li> </li>
<li> <li>
Open a new web browser or browser tab to the page http://marbles.sourceforge.net/. Open a new web browser or browser tab to the page <a href="http://marbles.sourceforge.net/">http://marbles.sourceforge.net/</a>.
In the pink box on that page enter the URI of the individual you created in the In the pink box on that page enter the URI of the individual you created in the
previous step and click "open." previous step and click "open."
</li> </li>
@ -841,11 +844,11 @@
</p> </p>
<ul> <ul>
<li> <li>
The search box is on the right side, directly opposite the "Index" link. Type the word "Australia" into the search box, and click on the Search
Type the word "Australia" into the box, and click on the "Search"
button.You should see a page of results, with links to countries that button.You should see a page of results, with links to countries that
border Australia, individuals that include Australia, and to border Australia, individuals that include Australia, and to
Australia itself. Australia itself. To trigger the search index, you can log in as a site
administrator and go to "http://your-vivo-url/SearchIndex".
</li> </li>
</ul> </ul>
</div> </div>

View file

@ -1,530 +0,0 @@
-------------------------------------------------------------------------------
This document is a summary of the VIVO installation process. This and other documentation
can be found at:
http://vivoweb.org/support
PLEASE NOTE!
These instructions assume that you are performing a clean install,
including emptying an existing database and removing a previous installation
from the Tomcat webapps directory. Product functionality may not be as expected
if you install over an existing installation of an earlier version.
Upgrade:
If you are going to upgrade an existing service, please consult the upgrade.txt
in this directory.
VIVO Developers:
If you are working on the VIVO source code from Subversion, the instructions
are slightly different. Please consult developers.txt in this directory.
-------------------------------------------------------------------------------
* I. Install required software
* II. Create an empty MySQL database
* III. Download the VIVO Application Source
* IV. Specify deployment properties
* V. Compile and deploy
* VI. Set Tomcat JVM parameters and security limits
* VII. Start Tomcat
* VIII. Log in and add RDF data
* IX. Set the Contact Email Address (if using "Contact Us" form)
* X. Setup Apache Tomcat Connector
* XI. Configure Pellet Reasoner
* XII. Using an External Authentication System with VIVO
* XIII. Was the installation successful?
-------------------------------------------------------------------------------
I. Install required software
Before installing VIVO, make sure that the following software is installed on
the desired machine:
* Java (SE) 1.6 or higher [http://java.sun.com] (Not OpenJDK)
* Apache Tomcat 6.x or higher [http://tomcat.apache.org]
* Apache Ant 1.7 or higher [http://ant.apache.org]
* MySQL 5.1 or higher [http://www.mysql.com]
Be sure to setup the environment variables for "JAVA_HOME" and "ANT_HOME" and
add the executables to your path per your operating system and installation
directions from the software support web sites.
-------------------------------------------------------------------------------
II. Create an empty MySQL database
Decide on a database name, username, and password. Log into your MySQL server
and create a new database in MySQL that uses UTF-8 encoding. You will need
these values for step IV when you configure the deployment properties. At the
MySQL command line you can create the database and user with these commands
substituting your values for "dbname", "username", and "password". Most of the
time, the "hostname" will equal "localhost".
CREATE DATABASE dbname CHARACTER SET utf8;
Grant access to a database user. For example:
GRANT ALL ON dbname.* TO 'username'@'hostname' IDENTIFIED BY 'password';
Keep track of the database name, username, and password for Step IV.
-------------------------------------------------------------------------------
III. Download the VIVO Application Source
Download the VIVO application source as either rel-1.1.1.zip or rel-1.1.1.gz file
and unpack it on your web server:
http://vivoweb.org/download
-------------------------------------------------------------------------------
IV. Specify deployment properties
At the top level of the unpacked distribution, copy the file
example.deploy.properties to a file named simply deploy.properties. This file
sets several properties used in compilation and deployment.
NOTE: For those installing on Windows operating system, include the windows
drive and use the forward slash "/" and not the back slash "\" in the
directory locations, e.g. "c:/tomcat".
Default namespace: VIVO installations make their RDF resources available for harvest
using linked data. Requests for RDF resource URIs redirect to HTML
or RDF representations as specified by the client. To make this
possible, VIVO's default namespace must have certain structure and
begin with the public web address of the VIVO installation.
For example, if the web address of a VIVO installation is
http://vivo.example.edu/ the default namespace must be set to
http://vivo.example.edu/individual/ in order to support linked data.
Similarly, if VIVO is installed at http://www.example.edu/vivo the
default namespace must be set to http://www.example.edu/vivo/individual/
Note: The namespace must end with "individual/" (including the
trailing slash).
property name: Vitro.defaultNamespace
example value: http://vivo.mydomain.edu/individual/
Directory where Vitro code is located. In most deployments,
this is set to ./vitro-core, but it commonly points elsewhere
during development.
property name: vitro.core.dir
example value: ./vitro-core
Directory where tomcat is installed
property name: tomcat.home
example value: /usr/local/tomcat
Name of your VIVO application
property name: webapp.name
example value: vivo
Directory where uploaded files will be stored. You must create
this directory ahead of time.
property name: upload.directory
example value: /usr/local/vivo/data/uploads
Directory where the Lucene search index will be built.
Depending on your permissions and who Tomcat is running as,
you may need to create this directory ahead of time.
property name: LuceneSetup.indexDir
example value: /usr/local/vivo/data/luceneIndex
Specify an SMTP host that the form will use for sending
e-mail (Optional). If this is left blank, the contact form
will be hidden and disabled.
property name: Vitro.smtpHost
example value: smtp.servername.edu
Specify the JDBC URL of your database. Change the end of the
URL to reflect your database name (if it is not "vivo").
property name: VitroConnection.DataSource.url
example value: jdbc:mysql://localhost/vivo
Change the username to match the authorized user you created in MySQL
property name: VitroConnection.DataSource.username
example value: username
Change the password to match the password you created in MySQL
property name: VitroConnection.DataSource.password
example value: password
Specify the Jena triple store technology to use. SDB is Jena's
SPARQL database; this setting allows RDF data to scale beyond the
limits of the JVM heap. Set to RDB to use the older Jena RDB
store with in-memory caching.
property name: VitroConnection.DataSource.tripleStoreType
example value: SDB
Specify the maximum number of active connections in the database
connection pool to support the anticipated number of concurrent
page requests. It is not necessary to adjust this value when
using the RDB configuration.
property name: VitroConnection.DataSource.pool.maxActive
example value: 40
Specify the maximum number of database connections that will be
allowed to remain idle in the connection pool. Default is
25% of the maximum number of active connections.
property name: VitroConnection.DataSource.pool.maxIdle
example value: 10
Change the dbtype setting to use a database other than MySQL.
Otherwise, leave this value unchanged.
Possible values are DB2, derby, HSQLDB, H2, MySQL, Oracle,
PostgreSQL, and SQLServer.
Refer to http://openjena.org/wiki/SDB/Databases_Supported
for additional information.
property name: VitroConnection.DataSource.dbtype
example value: MySQL
Specify a driver class name to use a database other than MySQL.
Otherwise, leave this value unchanged.
This JAR file for this driver must be added to the the
webapp/lib directory within the vitro.core.dir specified above.
property name: VitroConnection.DataSource.driver
example value: com.mysql.jdbc.Driver
Change the validation query used to test database connections
only if necessary to use a database other than MySQL.
Otherwise, leave this value unchanged.
property name: VitroConnection.DataSource.validationQuery
example value: SELECT 1
Specify the name of your first admin user for the VIVO application.
This user will have an initial temporary password of 'defaultAdmin'.
You will be prompted to create a new password on first login.
property name: initialAdminUser
example value: defaultAdmin
The name of a property that can be used to associate an Individual
with a user account. When a user logs in with a name that matches
the value of this property, the user will be authorized to edit
that Individual.
property name: selfEditing.idMatchingProperty
example value: http://vivo.mydomain.edu/ns#networkId
NOTE: If you want to use an external authentication system like Shibboleth or
CUWebAuth, you will need to set two additional properties in this file. See
the section below entitled "Using an External Authentication System with VIVO".
Temporal Graph Visualization is used to compare different
organizations/people within an organization on different parameters
like number of publications, grants. This parameter will be used
as a default in case a URI is not provided. It will be also used
whenever this visualization is to be rendered for top level organization.
In absence of this parameter a SPARQL query will be fired which will
attempt to provide a top level organization.The name of a property
that can be used to associate an Individual with a user account.
When a user logs in with a name that matches the value of this property,
the user will be authorized to edit that Individual.
property name: visualization.topLevelOrg
example value: http://vivo-trunk.indiana.edu/individual/topLevelOrgURI
NOTE: If you want to use an external authentication system like Shibboleth or
CUWebAuth, you will need to set two additional properties in this file. See
the section below entitled "Using an External Authentication System with VIVO".
-------------------------------------------------------------------------------
V. Compile and deploy
At the command line, from the top level of the unpacked distribution directory,
type:
ant all
to build VIVO and deploy to Tomcat's webapps directory.
-------------------------------------------------------------------------------
VI. Set Tomcat JVM parameters and security limits
Currently, VIVO copies the contents of your RDF database into memory in order
to serve Web requests quickly (the in-memory copy and the underlying database
are kept in synch as edits are performed).
VIVO will require more memory than that allocated to Tomcat by default. With
most installations of Tomcat, the setenv.sh or setenv.bat file in Tomcat's bin
directory is a convenient place to set the memory parameters.
For example:
export CATALINA_OPTS="-Xms1024m -Xmx1024m -XX:MaxPermSize=64m"
This sets Tomcat to allocate an initial heap of 1024 megabytes, a maximum heap
of 1024 megabytes, and a PermGen space of 64 megs. 1024 megabytes is a minimum
practical heap size for production installations storing data for large academic
institutions, and additional heap space is preferable. For testing with small
sets of data, 256m to 512m should be sufficient.
If an OutOfMemoryError is encountered during VIVO execution, it can be remedied
by increasing the heap parameters and restarting Tomcat.
Security limits: VIVO is a multithreaded web application that may require more threads than are
permitted under your Linux installation's default configuration. Ensure that
your installation can support the required number of threads by making the
following edits to /etc/security/limits.conf:
apache hard nproc 400
tomcat6 hard nproc 1500
-------------------------------------------------------------------------------
VII. Start Tomcat
Most Tomcat installations can be started by running startup.sh or startup.bat
in Tomcat's bin directory. Point your browser to http://localhost:8080/vivo/
to test the application.
If Tomcat does not start up, or the VIVO application is not visible, check the
catalina.out file in Tomcat's logs directory.
-------------------------------------------------------------------------------
VIII. Log in and add RDF data
If the startup was successful, you will see a welcome message informing you
that you have successfully installed VIVO. Click the "Log in" link near the
upper right corner. Log in with the initialAdminUser username you set up in
Step IV. The initial password for initialAdminUser is defaultAdmin. On first
login, you will be prompted to select a new password and verify it a second
time.
After verifying your new password, you will be presented with a menu of
editing options. Here you can create OWL classes, object properties, data
properties, and configure the display of data. Currently, any classes you wish
to make visible on your website must be part of a class group, and there a
number of visibility and display options available for each ontology entity.
VIVO comes with a core VIVO ontology, but you may also upload other ontologies
from an RDF file. Under the "Advanced Data Tools" click "Add/Remove RDF Data."
Note that Vitro currently works best with OWL-DL ontologies and has only limited
support for pure RDF data. You can enter a URL pointing to the RDF data you
wish to load or upload a file on your local machine. Ensure that the "add RDF"
radio button is selected. You will also likely want to check "create
classgroups automatically." Clicking the "Index" tab in the navigation bar at
the top left of the page will show a simple index of the knowledge base.
See more documentation for configuring VIVO, ingesting data, and manually
adding data at http://vivoweb.org/support.
-------------------------------------------------------------------------------
IX. Set the Contact Email Address (if using "Contact Us" form)
If you have configured your application to use the "Contact Us" feature in Step
IV (Vitro.smtpHost), you will also need to add an email address to the VIVO
application. This is the email that the contact form submits to. It can be a
list server or an individual's email address.
Log in as a system administrator. Navigate to the "Site Admin" table of contents
(link in the right side of the header). Go to "Site Information" (under "Site
Configuration"). In the "Site Information Editing Form," enter a functional
email address in the field "Contact Email Address." and submit the change.
If you set the Vitro.smtpHost in Step IV and do NOT provide an email address
in this step, your users will receive a java error in the interface.
-------------------------------------------------------------------------------
X. Set up Apache Tomcat Connector
It is recommended that a Tomcat Connector such as mod_jk be used to ensure that
the site address does not include the port number (e.g. 8080) and an additional
reference to the Tomcat context name (e.g. /vivo).
For example - http://example.com instead of http://example.com:8080/vivo
Using the mod_jk connector allows for communication between Tomcat and the
primary web server. The "Quick Start HowTo" on the Apache site
http://tomcat.apache.org/connectors-doc/generic_howto/quick.html describes
the minimum server configurations for several popular web servers.
After setting up the mod_jk connector above, you will need to modify the Tomcat's
server.xml ([tomcat root]/conf/) to respond to requests from Apache via the connector.
Look for the <connector> directive and add the following properties:
connectionTimeout="20000" maxThreads="320" keepAliveTimeout="20000"
Note: the value for maxThreads (320) is equal to the value for MaxClients in the
httpd.conf file.
Locate the <Host name="localhost"...> directive and update as follows:
<Host name="localhost" appBase="webapps"
DeployOnStartup="false"
unpackWARs="true" autoDeploy="false"
xmlValidation="false" xmlNamespaceAware="false">
<Alias>example.com</Alias>
<Context path=""
docBase="/usr/local/tomcat/webapps/vivo"
reloadable="true"
cookies="true" >
<Manager pathname="" />
<Environment type="java.lang.String" override="false"
name="path.configuration"
value="deploy.properties"
/>
</Context>
-------------------------------------------------------------------------------
XI. Configure Pellet Reasoner
VIVO uses the Pellet engine to perform reasoning, which runs in the
background at startup and also when the knowledge base is edited. VIVO
continues serving pages while the reasoner continues working; when the
reasoner finishes, the new inferences appear. Inferred statements are cached
in a database graph so that they are available immediately when VIVO is restarted.
By default, Pellet is fed only an incomplete view of your ontology and only
certain inferences are materialized. These include rdf:type,
rdfs:subClassOf,owl:equivalentClass, and owl:disjointWith. This mode is
typically suitable for ontologies with a lot of instance data. If you would
like to keep the default mode, skip to the next step.
To enable "complete" OWL inference (materialize all significant entailed
statements), open "vitro-core/webapp/config/web.xml" and search for
PelletReasonerSetup.
Then change the name of the listener class to PelletReasonerSetupComplete.
Because "complete" reasoning can be very resource intensive, there is also an
option to materialize nearly all inferences except owl:sameAs and
owl:differentFrom.
This is enabled by specifying PelletReasonerSetupPseudocomplete. For ontologies
with large numbers of individuals, this mode can offer enormous performance
improvements over the "complete" mode.
Finally, a class called PelletReasonerSetupPseudocompleteIgnoreDataproperties
is provided to improve performance on ontologies with large literals where data
property entailments are not needed.
-------------------------------------------------------------------------------
XII. Using an External Authentication System with VIVO
VIVO can be configured to work with an external authentication system like
Shibboleth or CUWebAuth.
VIVO must be accessible only through an Apache HTTP server. The Apache server
will be configured to invoke the external authentication system. When the user
completes the authentication, the Apache server will pass a network ID to VIVO,
to identify the user.
If VIVO has an account for that user, the user will be logged in with the
privileges of that account. In the absence of an account, VIVO will try to find
a page associated with the user. If such a page is found, the user can log in
to edit his own profile information.
---- Configuring the Apache server:
Your institution will provide you with instructions for setting up the external
authentication system. The Apache server must be configured to secure a page in
VIVO. When a user reaches this secured page, the Apache server will invoke the
external authentication system.
For VIVO, this secured page is named:
/loginExternalAuthReturn
When your instructions call for the location of the secured page, this is the
value you should use.
---- Configuring VIVO:
To enable external authentication, VIVO requires three values in the
deploy.properties file.
* The name of the HTTP header that will hold the external users network ID
When a user completes the authentication process, the Apache server will
put the users network ID into one of the headers of the HTTP request.
The instructions from your institution should tell you which header is
used for this purpose.
You need to tell VIVO the name of that HTTP header. Insert a line like
this in the deploy.properties file:
externalAuth.netIdHeaderName = [the header name]
For example:
externalAuth.netIdHeaderName = remote_userID
* The text for the Login button
To start the authentication process, the user will click on a button in
the VIVO login form. You need to tell VIVO what text should appear in that
button.
Put a line like this in the deploy.properties file:
externalAuth.buttonText = [the text for your login button]
For example:
externalAuth.buttonText = Log in using BearCat Shibboleth
The VIVO login form will display a button labelled “Log in using BearCat
Shibboleth”.
* Associating a User with a profile page
If VIVO has an account for the user, the user will be given the privileges
assigned to that account.
In addition, VIVO will try to associate the user with a profile page, so
the user may edit his own profile data. VIVO will search the data model
for a person with a property that matches the Users network ID.
You need to tell VIVO what property should be used for matching. Insert
a line like this in the deploy.properties file:
selfEditing.idMatchingProperty = [the URI of the property]
For example:
selfEditing.idMatchingProperty = http://vivo.mydomain.edu/ns#networkId
-------------------------------------------------------------------------------
XIII. Was the installation successful?
If you have completed the previous steps, you have good indications that the
installation was successful.
* Step VII showed that Tomcat recognized the webapp, and that the webapp was
able to present the initial page.
* Step VIII verified that you can log in to the administrator account.
Here is a simple test to see whether the ontology files were loaded:
* Click on the "Index" link on the upper left, below the logo. You should see
a "locations" section, with links for "Country" and "Geographic Location."
The index is built in a background thread, so on your first login, you may
see an empty index instead. Refresh the page periodically to see whether
the index will be populated. This may take some time: with VIVO installed
on a modest laptop computer, loading the ontology files and building the
index took more than 5 minutes from the time that Tomcat was started.
* Click on the "Country" link. You should see an alphabetical list of the
countries of the world.
Here is a test to see whether your system is configured to serve linked data:
* Point your browser to the home page of your website, and click the "Log in" link
near the upper right corner. Log in with the initialAdminUser username you
set up in Step IV. If this is your first time logging in, you will be
prompted to change the password.
* After you have successfully logged in, click "site admin" in the upper right
corner. In the drop down under "Data Input" select "Faculty Member(core)"
and click the "Add individual of this class" button.
* Enter the name "test individual" under the field "Individual Name," scroll to
the bottom, and click "Create New Record." You will be taken to the "Individual
Control Panel." Make note of the value of the field "URI" it will be used in
the next step.
* Open a new web browser or browser tab to the page http://marbles.sourceforge.net/.
In the pink box on that page enter the URI of the individual you created in the
previous step and click "open."
* In the resulting page search for the URI of the "test individual." You should
find it towards the bottom of the page next to a red dot followed by "redirect
(303)." This indicates that you are successfully serving linked RDF data.
If the URI of the "test individual" is followed by "failed (400)" you are not
successfully serving linked data.
Finally, test the search index.
* The search box is on the right side, directly opposite the "Index" link.
Type the word "Australia" into the box, and click on the "Search"
button.You should see a page of results, with links to countries that
border Australia, individuals that include Australia, and to
Australia itself.