Updated file with release announcement from the wiki. Also changed the explanation text for deploy.properties settings for: vitro.core.dir, upload.directory, luceneSetup.indexDir, selfEditing.idMatchingProperty, visualization.topLevelOrg.

This commit is contained in:
ejc12 2011-02-01 22:13:04 +00:00
parent a5b4d8d0a6
commit d70fd96e95

View file

@ -13,7 +13,8 @@
<div id="wrapper-content" role="main"> <div id="wrapper-content" role="main">
<h1>VIVO Release 1 v1.2 Upgrade Guide</h1> <h1>VIVO Release 1 v1.2 Upgrade Guide</h1>
<small> <small>
January 28, 2011 - Upgrading from Release 1 v1.1 to Release 1 v1.2 January 28, 2011 - Upgrading from Release 1 v1.1 to Release 1
v1.2
</small> </small>
<blockquote> <blockquote>
<b>Missing pieces and fixes</b> <b>Missing pieces and fixes</b>
@ -22,9 +23,7 @@
Link to install pdf online at SF Link to install pdf online at SF
</li> </li>
<li> <li>
Add config table from install d/t so many new vars. <br>
</li>
<li>
</li> </li>
</ul> </ul>
</blockquote> </blockquote>
@ -39,22 +38,109 @@
</ul> </ul>
</toc> </toc>
<p> <p>
This document provides a short description of the steps involved in upgrading your This document provides a short description of the steps involved in
installation of VIVO from Release 1, Version 1.1 to Version 1.2. This and other upgrading your installation of VIVO from Release 1, Version 1.1 to
documentation can be found on the <a href="http://vivoweb.org/support">support page</a> 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> at <a href="http://vivoweb.org">VIVOweb.org</a>
</p> </p>
<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> 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> or the install.html file located in the <code>doc</code>
directoy of the VIVO source code distribution. directoy of the VIVO source code distribution. The installation
document also has a list of the required software and versions.
</p> </p>
<!-- Release Announcement --><h2 id="announcement">Release anouncement for V1.2</h2> <!-- Release Announcement --><h2 id="announcement">Release anouncement for V1.2</h2>
<p> <p>
Text from the wiki page The VIVO 1.2 release incorporates major changes to the entire
application - theming and navigation changes that will be immediately
evident to any user, and underlying changes to the system architecture
that are less visible but address important questions of scalability
and extensibility.
</p>
<h3>Theming and Navigation</h3>
<p>
A new installation of VIVO 1.2 will look strikingly different - the
User Interface team has designed a new visual theme that incorporates a
new navigation and browse structure as well as a much more modular
approach to page design. This theme is not only cosmetically different
but leverages entirely new page templates developed with the Freemarker
system, an open-source library for Java development that enables much
cleaner separation of application logic from the actual page design.
These changes extend the available configuration options controlling
VIVO's appearance and navigation options while also simplifying the
process of local customization and branding.
</p>
<p>
For existing installations of VIVO, the upgrade will not immediately
transition to the new theme, navigation, or page templates. The current
default theme and "tabs" (top-level and secondary navigation controls)
will be left intact on upgrade and will still function as they do in
version 1.1.1, with the caveat that local modifications to the default
theme may conflict with internal application changes. We highly
recommend that current VIVO installations use the time between release
1.2 and the upcoming release of version 1.3 (targeted for June or July
2011) to migrate local theme branding and navigation to the new VIVO
template. Many legacy features such as the "tab" infrastructure have
been deprecated with version 1.2 and will no longer be supported as of
version 1.3.
</p>
<h3>Browsing</h3>
<p>
In addition to changes in the top-level navigation, VIVO 1.2
introduces a number of new browsing controls that will be made more
configurable and extensible in version 1.3 but which already offer
extensive functionality.
</p>
<p>
A fresh installation of VIVO 1.2 will feature the new theme and
additional browsing options on other top-level navigation pages (Home,
People, Research, Organizations, and Events). Primary among the new
browsing options will be browsing by <b>type</b>, organized
hierarchically with the same upper-level <b>class groups</b>
currently
visible in search results - people, courses, activities, topics,
events, organizations, and publications. Class groups combine the
similar types such as people or organizations into groups for browsing
and searching, and are locally configurable using the VIVO ontology
editor.
</p>
<p>
Once a group has been selected, browsing can continue to the very
specific, at the level of individual people, organizations, events, or
publications via A ... Z listing featuring thumbnail pictures where
available. Sites will be able to configure which groups and which types
within a group are exposed in search results and for browsing.
</p>
<h3>Data Storage</h3>
<p>
Before this release, VIVO has used the Jena
(<a href="http://jena.sourceforge.net/" rel="nofollow">http://jena.sourceforge.net</a>)
relational database (RDB)
subsystem for the storage of RDF data. The performance of this persistence layer
has never been fast enough for an interactivity at any significant scale, so
VIVO has also maintained a complete copy of data in memory. While server memory capacity
has increased significantly in recent years, this requirement has put
limits on the ultimate scalability of VIVO instances and also increased
the cost of servers required to support VIVO.
</p>
<p>
With version 1.2 VIVO uses the SPARQL database (SDB) subsystem of
Jena, specifically designed to support scalable storage and query of
RDF datasets while still using standard relational database technology.
This transition will significantly reduce the initial memory footprint
of a VIVO application, and while the application will still require
adequate processor and memory resources to generate pages from so many
individual RDF statements, the scalability of VIVO installations is
greatly improved.
</p>
<p>
The transition to retrieving all data via SPARQL queries also
enables additional features important for tracking data provenance and
access to data outside the immediate local VIVO instance. These
features will be more fully explored and developed for version 1.3.
</p> </p>
<!-- Upgrade process for V1.2 --><h2 id="upgrade">Upgrade process for V1.2</h2> <!-- Upgrade process for V1.2 --><h2 id="upgrade">Upgrade process for V1.2</h2>
</p>
<toc> <toc>
<ol class="roman1"> <ol class="roman1">
<li> <li>
@ -67,10 +153,12 @@
<a href="#ontology">Ontology Upgrade</a> <a href="#ontology">Ontology Upgrade</a>
<ol class="roman2"> <ol class="roman2">
<li> <li>
<a href="#verify_ontology_upgrade">Verify Ontology upgrade process</a> <a href="#verify_ontology_upgrade">Verify Ontology upgrade
process</a>
</li> </li>
<li> <li>
<a href="#ontology_knowledge_base">Ontology knowledge base manual review</a> <a href="#ontology_knowledge_base">Ontology knowledge base
manual review</a>
</li> </li>
</ol> </ol>
</li> </li>
@ -78,10 +166,12 @@
<a href="#fileSystem">File Storage System Upgrade</a> <a href="#fileSystem">File Storage System Upgrade</a>
<ol class="roman2"> <ol class="roman2">
<li> <li>
<a href="#verify_ontology_upgrade">Changes to the File Storage System</a> <a href="#verify_ontology_upgrade">Changes to the File
Storage System</a>
</li> </li>
<li> <li>
<a href="#verify_ontology_upgrade">Verify File Storage System upgrade process</a> <a href="#verify_ontology_upgrade">Verify File Storage
System upgrade process</a>
</li> </li>
</ol> </ol>
</li> </li>
@ -94,7 +184,7 @@
<p> <p>
Please ensure that backups are created of the: Please ensure that backups are created of the:
</p> </p>
<ul style="list-style-type:square;"> <ul style="list-style-type: square;">
<li> <li>
Tomcat webapps directory Tomcat webapps directory
</li> </li>
@ -106,13 +196,13 @@
</li> </li>
</ul> </ul>
<p> <p>
The upgrade process is similar to the original install process with the following The upgrade process is similar to the original install process with
EXCEPTIONS: the following EXCEPTIONS:
</p> </p>
<ul> <ul>
<li> <li>
DO NOT reinstall MySQL or recreate the MySQL database. Please ensure that DO NOT reinstall MySQL or recreate the MySQL database. Please
you back-up the MySQL database. ensure that you back-up the MySQL database.
</li> </li>
<li> <li>
It is not necessary to add RDF data. It is not necessary to add RDF data.
@ -120,27 +210,29 @@
<li> <li>
First-time login of the administrator account after the upgrade First-time login of the administrator account after the upgrade
process is complete will use the password previously set, NOT the process is complete will use the password previously set, NOT the
default password used on the first login after the initial installation. default password used on the first login after the initial
installation.
</li> </li>
<li> <li>
The first time Apache Tomcat starts up after the upgrade, it will The first time Apache Tomcat starts up after the upgrade, it
initiate a process that modifies the knowledge base to align the data will initiate a process that modifies the knowledge base to align the
with the revised ontology. See the section on the <a href="ontology">Ontology Upgrade</a> data with the revised ontology. See the section on the <a href="ontology">Ontology Upgrade</a>
below for more information. below for more information.
</li> </li>
</ul> </ul>
<h3 id="upgrade_process">The Upgrade Process</h3> <h3 id="upgrade_process">The Upgrade Process</h3>
<p> <p>
1. Download the new distribution file and unpack it into a new source 1. Download the new distribution file and unpack it into a new
directory. source directory.
</p> </p>
<p> <p>
2. Create deploy.properties, using the same values as in your previous 2. Create deploy.properties, using the same values as in your
installation and set values for the new variables. The following table previous installation and set values for the new variables. The
shows the default properties for deploy.properties with new V1.2 properties in following table shows the default properties for deploy.properties with
<span class="blue">blue</span>. new V1.2 properties in <span class="blue">blue</span>.<!-- deploy.properties table from install.html -->
<!-- deploy.properties table from install.html --> </p>
<table> <table>
<tbody>
<tr> <tr>
<th> <th>
Property Name Property Name
@ -151,16 +243,18 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Default namespace: VIVO installations make their RDF resources available Default namespace: VIVO installations make their
for harvest using linked data. Requests for RDF resource URIs redirect to HTML RDF resources available for harvest using linked data. Requests for RDF
or RDF representations as specified by the client. To make this possible, resource URIs redirect to HTML or RDF representations as specified by
VIVO's default namespace must have certain structure and begin with the public the client. To make this possible, VIVO's default namespace must have
web address of the VIVO installation. For example, if the web address of a VIVO certain structure and begin with the public web address of the VIVO
installation is "http://vivo.example.edu/" the default namespace must be set to installation. For example, if the web address of a VIVO installation is
"http://vivo.example.edu/individual/" in order to support linked data. Similarly, "http://vivo.example.edu/" the default namespace must be set to
if VIVO is installed at "http://www.example.edu/vivo" the default namespace must be "http://vivo.example.edu/individual/" in order to support linked data.
set to "http://www.example.edu/vivo/individual/" Similarly, if VIVO is installed at "http://www.example.edu/vivo" the
<h4>* The namespace must end with "individual/" (including the trailing slash).</h4> default namespace must be set to
"http://www.example.edu/vivo/individual/"<h4>* The namespace must end with "individual/" (including the
trailing slash).</h4>
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -173,8 +267,9 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Directory where Vitro code is located. In most deployments, this is set to Directory where Vitro code is located. In most
./vitro-core, but it commonly points elsewhere during development. deployments, this is set to ./vitro-core (It is not uncommon for this
setting to point elsewhere in development environments).
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -213,7 +308,9 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Directory where uploaded files will be stored. You must create this directory ahead of time. Directory where uploaded files will be stored.
Be sure this directory exists and is writable by the user that
the Tomcat service is running as.
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -223,11 +320,12 @@
<td> <td>
/usr/local/vivo/data/uploads /usr/local/vivo/data/uploads
</td> </td>
</tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Directory where the Lucene search index will be built. Depending on your Directory where the Lucene search index will be
permissions and who Tomcat is running as, you may need to create this directory built. Be sure this directory exists and is writable by the user that
ahead of time. the Tomcat service is running as.
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -240,8 +338,9 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Specify an SMTP host that the form will use for sending e-mail (Optional). If Specify an SMTP host that the form will use for
this is left blank, the contact form will be hidden and disabled. sending e-mail (Optional). If this is left blank, the contact form will
be hidden and disabled.
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -254,8 +353,8 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Specify the JDBC URL of your database. Change the end of theURL to reflect Specify the JDBC URL of your database. Change
your database name (if it is not "vivo"). the end of theURL to reflect your database name (if it is not "vivo").
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -268,7 +367,8 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Change the username to match the authorized user you created in MySQL. Change the username to match the authorized user
you created in MySQL.
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -281,7 +381,8 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Change the password to match the password you created in MySQL. Change the password to match the password you
created in MySQL.
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -294,9 +395,9 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Specify the Jena triple store technology to use. SDB is Jena's Specify the Jena triple store technology to use.
SPARQL database; this setting allows RDF data to scale beyond the SDB is Jena's SPARQL database; this setting allows RDF data to scale
limits of the JVM heap. Set to RDB to use the older Jena RDB beyond the limits of the JVM heap. Set to RDB to use the older Jena RDB
store with in-memory caching. store with in-memory caching.
</td> </td>
</tr> </tr>
@ -310,9 +411,9 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Specify the maximum number of active connections in the database Specify the maximum number of active connections
connection pool to support the anticipated number of concurrent in the database connection pool to support the anticipated number of
page requests. It is not necessary to adjust this value when concurrent page requests. It is not necessary to adjust this value when
using the RDB configuration. using the RDB configuration.
</td> </td>
</tr> </tr>
@ -326,9 +427,9 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Specify the maximum number of database connections that will be Specify the maximum number of database
allowed to remain idle in the connection pool. Default is connections that will be allowed to remain idle in the connection pool.
25% of the maximum number of active connections. Default is 25% of the maximum number of active connections.
</td> </td>
</tr> </tr>
<tr class="odd_row blue"> <tr class="odd_row blue">
@ -341,11 +442,10 @@
</tr> </tr>
<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
Otherwise, leave this value unchanged. other than MySQL. Otherwise, leave this value unchanged. Possible
Possible values are DB2, derby, HSQLDB, H2, MySQL, Oracle, values are DB2, derby, HSQLDB, H2, MySQL, Oracle, PostgreSQL, and
PostgreSQL, and SQLServer. 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>
</tr> </tr>
@ -359,9 +459,9 @@
</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
Otherwise, leave this value unchanged. other than MySQL. Otherwise, leave this value unchanged. This JAR file
This JAR file for this driver must be added to the the <code>webapp/lib</code> for this driver must be added to the the <code>webapp/lib</code>
directory within the vitro.core.dir specified above. directory within the vitro.core.dir specified above.
</td> </td>
</tr> </tr>
@ -375,9 +475,9 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Change the validation query used to test database connections Change the validation query used to test
only if necessary to use a database other than MySQL. database connections only if necessary to use a database other than
Otherwise, leave this value unchanged. MySQL. Otherwise, leave this value unchanged.
</td> </td>
</tr> </tr>
<tr class="odd_row blue"> <tr class="odd_row blue">
@ -390,9 +490,10 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Specify the name of your first admin user for the VIVO application. Specify the name of your first admin user for
This user will have an initial temporary password of 'defaultAdmin'. the VIVO application. This user will have an initial temporary password
You will be prompted to create a new password on first login. of 'defaultAdmin'. You will be prompted to create a new password on
first login.
</td> </td>
</tr> </tr>
<tr class="odd_row"> <tr class="odd_row">
@ -405,9 +506,15 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
The name of a property that can be used to associate an Individual The URI of a property that can be used to
with a user account. When a user logs in with a name that matches associate an Individual with a user account. When a user logs in with a
the value of this property, the user will be authorized to editthat Individual. name that matches the value of this property, the user will be
authorized to edit that Individual.&nbsp; For example, to use the netID
at Cornell University as the property:
<br>
<span style="font-style: italic;">seflEditing.idMatchingProperty
=
http://vivo.cornell.edu/ns/hr/0.9/hr.owl#netId</span>
</td> </td>
</tr> </tr>
<tr class="odd_row blue"> <tr class="odd_row blue">
@ -420,16 +527,20 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
Temporal Graph Visualization is used to compare different The temporal graph visualization is used to
organizations/people within an organization on different parameters like compare different
number of publications, grants. This parameter will be used as a default organizations/people within an organization on parameters like number
in case a URI is not provided. It will be also used whenever this of publications or grants. By default, the app will attempt to make its
visualization is to be rendered for top level organization. best guess at the top level organization in your instance. If you're
In absence of this parameter a SPARQL query will be fired which will unhappy with this selection, uncomment out the property below and set
attempt to provide a top level organization. The name of a property that it to the URI of the organization individual you want to identify as
can be used to associate an Individual with a user account. When a user the top level organization. It will be used as the default whenever the
logs in with a name that matches the value of this property, the user temporal graph visualization is rendered without being passed an
will be authorized to edit that Individual. explicit org. For example, to use "Ponce School of Medicine" as the top
organization:
<br>
<span style="font-style: italic;">visualization.topLevelOrg =
http://vivo.psm.edu/individual/n2862</span>
</td> </td>
</tr> </tr>
<tr class="odd_row blue"> <tr class="odd_row blue">
@ -440,41 +551,50 @@
http://vivo-trunk.indiana.edu/individual/topLevelOrgURI http://vivo-trunk.indiana.edu/individual/topLevelOrgURI
</td> </td>
</tr> </tr>
</tbody>
</table> </table>
</p>
<p> <p>
3. Apply any previous changes you have made to the new source directory. 3. Apply any previous changes you have made to the new source
directory.
</p>
<blockquote> <blockquote>
<strong>Special notes regarding source files</strong> <strong>Special notes regarding source files</strong>
<ul> <ul>
<li> <li>
This process assumes any changes made to the application were made in This process assumes any changes made to the application were
the source directory and deployed, and were not made directly within made in the source directory and deployed, and were not made directly
the Tomcat webapps directory. within the Tomcat webapps directory.
</li> </li>
<li> <li>
In many cases, simply copying the modified files from your original In many cases, simply copying the modified files from your
source directory will not work since the files on which they are based original source directory will not work since the files on which they
have changed. It will be necessary to inspect the new source files and are based have changed. It will be necessary to inspect the new source
add any changes to them at that time. files and add any changes to them at that time.
</li> </li>
<li> <li>
NIH-funded VIVO Implmentations will need to apply the Google Analytics Tracking NIH-funded VIVO Implmentations will need to apply the Google
Code (GATC) to <code>googleAnalytics.ftl</code> Analytics Tracking Code (GATC) to <code>googleAnalytics.ftl</code>
in the theme:<pre>[new_source_directory]/themes/[theme_dir]/templates/googleAnalytics.ftl</pre> in
the theme:<pre>[new_source_directory]/themes/[theme_dir]/templates/googleAnalytics.ftl</pre>
A sample <code>googleAnalytics.ftl</code> A sample <code>googleAnalytics.ftl</code>
is included in the built-in theme. This file is included in the built-in
serves only as an example, and you must replace the tracking code shown theme. This file serves only as an example, and you must replace the
with your institution's own tracking code. tracking code shown with your institution's own tracking code. For
For additional information about the GATC for the NIH-funded VIVO 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>. 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>
<li> <li>
If you had used the <code>vivo/contrib/FLShibboleth</code> If you had used the <code>vivo/contrib/FLShibboleth</code>
code in your previous release, code in your previous release, you should stop using it. Consult <code>install.html</code>
you should stop using it. Consult <code>install.html</code> or <a href="VIVO_Release-1-v1.2_Installation_Guide.pdf">VIVO Release 1
or <a href="VIVO_Release-1-v1.2_Installation_Guide.pdf">VIVO Release 1 v1.2 Installation Guide</a> v1.2 Installation Guide</a>
on "Using an External Authentication System with VIVO". on "Using an External Authentication System
with VIVO".
</li> </li>
</ul> </ul>
</blockquote> </blockquote>