NIH | National Cancer Institute | NCI Wiki  

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
{scrollbar:icons=false}
h1. {page-info:title}
{panel:title=Contents of this Page}
{toc:minLevel=2}
{panel}

h2. Introduction
This document is a section of the [Installation Guide|WIP LJJ LexEVS 5.x Installation Guide]. 


This section provides requirements, instructions, and troubleshooting information for installing LexEVS Grid Services. 

h1h2. Preliminary considerationsConsiderations

* The [LexEVS 5.x Supported Platforms] are the same for this environment as they are for the Local Runtime and the Remote API.

* Before installing the LexEVS Grid Services environment you must have both a [Installing LexEVS 5.x Local Runtime] installed and a [Installing LexEVS 5.x Remote API] working.

* Just like the Remote API install, it is not required that you load a terminology into the Local Runtime in order to complete the installation of the Grid Services environment.  However, the Grid services are not very useful if they have nothing in the underlying Local Runtime to query against.

* This environment currently has no additional [Prerequisite Software|LexEVS 5.x Prerequisite Software Supported] beyond that of the the Remote API.

* Complete the [Downloading and installing the LexEVS Data or Analytical Grid Services|WIP LJJ Installing LexEVS 5.x Grid Services#Downloading and Installing the LexEVS Data or Analytical Grid Services] steps below.

Once you have completed the Grid Services environment install steps and the verification test as described in this guide then you should be ready to start using the Grid Services features to meet the needs of your application.  Not counting prerequisite software products the installation and verification should not take more than 30 minutes.

h1h2. Downloading and installing the LexEVS Data or Analytical Grid Services

|| Step || Action ||
| 1. Download the latest version of the LexEVS Analytical or Data Services ZIP file from the right.  You have a choice between ZIP files tailored for JBoss or Apache Tomcat installations.  The location you have chosen to save this on your computer will be referred to as the {{SAVE_DIRECTORY}}.  Our command examples will use {{scratch}} as this directory.
*Note:* {info:title=Note}Access to the downloads does not require an account.  If you are having trouble downloading files then you may need to disable pop-up blockers or check any firewall settings at your site.{info} | {{include:LexEVS 5.1 Grid Service Downloads to Include}} |
| 2. Unzip the file or files you have downloaded to {{{SAVE_DIRECTORY}}}


!Warning.jpg!
WARNING: {warning:title=Warning}Each ZIP contains a file by the same name.  This is by design because you can not deploy the Data or Analytical Grid Services to the same server.  Therefore you must do these one at a time or unzip them to multiple locations.

*Note:*  {warning}
{info:title=Note}Windows typically understands ZIP files and can extract files.  Unix has an {{unzip}} command.  Other utilities can be used such as WinZip or 7-Zip. | !Unzip_lexevs_services.png_!  |
| 2. Shut down your application or servlet container. This presumes that you have already installed a web server as outlined in the Prerequisite Software. The command to do the shut down will be web server specific.  See the documentation for your web server for information on how to do this.  There may be many alternatives.{info}

JBoss example:

* Windows:

{{shutdown.bat -S}}

* Unix:

{{./shutdown.sh -S}}

If you experience Java errors then the server may already be down. | [[Image:!jboss_shutdown.PNG! | frameless | center | 600px |
| 4. Create a directory for the web archive.
Create a directory called {{wsrf.war}} inside thisthe following directory *_:
{code}
{WEB_SERVER_HOME}\{DEPLOYMENT_HOME}_*
{code}
...where _{WEB_SERVER_HOME}_ is your application server home directory

_{{DEPLOYMENT_HOME}}_ is the Web Archive deployment directory for your application server
JBoss example:

* Windows:

{{c:\jboss-4.0.5.GA\server\default\deploy}}

* Unix:

{{/jboss-4.0.5.GA/server/default/deploy}}


For example:

* Windows:

{{mkdir wsrf.war}}

* Unix:

{{mkdir wsrf.war}} | [[Image:!Create_wsrf_war_dir.png | frameless | center | 600px! |
| 5. Unzip the {{wsrf.war}} file to the {{wsrf.war}} directory.

JBoss example:

* Windows:

From: {{c:\scratch\wsrf.war}}

To: {{c:\jboss-4.0.5.GA\server\default\deploy\wsrf.war}}

* Unix:

From: {{/scratch/wsrf.war}}

To: {{/jboss-4.0.5.GA/server/default/deploy\wsrf.war}}

Windows does not see WAR files as compressed files, therefore you must obtain an unzip utility such as [7-zip|http://www.7-zip.org] or [WinZip|http://www.winzip.com].  In Unix you should be able to use the unzip command. | !GridService_deploy.PNG!
|6. Download {{LexEVS_51_client.zip}} from the right.  This is from the client for a Remote API install.
|{include:LexEVS 5.1 Grid Service Downloads to Include} |
|7. Unzip {{LexEVS_51_client.zip}} to the {SAVE_DIRECTORY}.
|!Unzip_lexevs_services.png|frameless|center|600px|alt=Unzipping the Remote API client.!|
|8. Copy the {{application-config-client.xml}} file out of the unzipped client and into the deployed {{wsrf.war}} directory structure.
{code}
copy {SAVE_DIRECTORY}\LexEVS_51_client\conf\application-config-client.xml {WEB_SERVER_HOME}\{DEPLOYMENT_HOME}\wsrf.war\WEB-INF\classes
{code}
...where {SAVE_DIRECTORY} is the location of the downloaded file. {WEB_SERVER_HOME} is your application server home directory. {DEPLOYMENT_HOME} is the Web Archive deployment directory for your application server.
JBoss example:
* Windows:
{{copy c:\scratch\LexEVS_51_client\conf\application-config-client.xml c:\jboss-4.0.5.GA\server\default\deploy\wsrf.war\WEB-INF\classes}}
* Unix:
{{copy /scratch/LexEVS_51_client/conf/application-config-client.xml c:/jboss-4.0.5.GA/server/default/deploy/wsrf.war/WEB-INF/classes}}
{info:title=Note}If you are repeating these steps for the other services WAR file then it will have its own separate {{application-config-client.xml}} file that will be similarly placed in the WEB-INF/classes folder of the exploded WAR file.{info}
|!Copy_app_config_client.png|alt=Copy the applications client configuration file to classes home directory.! |
| 9. Edit the {{application-config-client.xml}} file.  There are three lines where you need to have the proper URL as a value.  The three lines are found:
#in the {{EvsServiceInfo}} bean with this text {{<entry key="APPLICATION_SERVICE_URL"}}
#in the {{AppService}} bean with this text {{<property name="serviceUrl"}}
#(OPTIONAL) in the {{EvsAuthenticationProvider}} bean with this text {{<property name="serviceUrl"}}
The values each have a URL like this:
{{http://{SERVER_ADDRESS}/{WAR_FILE_DEPLOYED}/}}
For each, you must change the {SERVER_ADDRESS} and {WAR_FILE_DEPLOYED} only.
...where {SERVER_ADDRESS} is the address of your server (domain and optionally  the port number). {WAR_FILE_DEPLOYED} is the name of the WAR file you placed in the server directories for deployment.
Example lines for the file:
# {{<entry key="APPLICATION_SERVICE_URL" value="http://localhost:8080/lexevsapi51/http/applicationService"/>}}
# {{<property name="serviceUrl" value="http://localhost:8080/lexevsapi51/http/applicationService"/>}}
# {{<property name="serviceUrl" value="http://localhost:8080/lexevsapi51/http/applicationService"/>}} |!edit_app_config_client.png|alt=Editing the applications client configuration file with circles around locations to change.! |
|10. There are 8 JAR files that must be copied from the LexEVS Subversion repository to your application server's class path.  Open a browser to here:
https://ncisvn.nci.nih.gov/svn/lexevs/base/v5/trunk/lexevs_service_cagrid/LexEVSAnalyiticalService/gs.lib/ and copy each of the JAR files to here: {code}
{WEB_SERVER_HOME}\{LIB_HOME}
{code}
...where {WEB_SERVER_HOME} is your application server home directory. {LIB_HOME} is the server's library directory.
JBoss example:
* Windows:
{{c:\jboss-4.0.5.GA\server\default\lib\}}
* Unix:
{{/jboss-4.0.5.GA/server/default/lib/}}
Each service is in its own server.  These files must be copied into each server.  If your web application server supports it there may be a way to place a single set of these files into a common location for all your application servers.
{info:title=Note}Also, watch out for port conflicts by making sure you select an alternate range for binding the ports on a separate server.  When the Data or Analytical Grid Services server runs at the same time they each must have unique port numbers to use.{info}
|!download_globus_jar_files.png|alt=Starting the JBoss server.! |
| 11. Repeat these steps for the other service if you are doing them one at a time. | |

h2. Testing the LexEVS Grid Services

|1. Start your application or servlet container if it is not already started.  The start command will be web server specific.  See the documentation for your web server for information on how to do this.
JBoss example:
* Windows:
{{Run.bat -c default}}
* Unix:
{{./Run.sh -c default}}
|!jboss_start.PNG|alt=Starting the JBoss server.! |
|2. Verify the installation by opening a browser to either
{{http://{SERVER_ADDRESS}/wsrf/services/cagrid/LexEVSDataService}}
or
{{http://{SERVER_ADDRESS}/wsrf/services/cagrid/LexEVSGridService}}
...where {SERVER_ADDRESS} is the address of your server (domain and optionally the port number)
For example:
{{http://localhost:8080/wsrf/services/cagrid/LexEVSDataService}}
or
{{http://localhost:8080/wsrf/services/cagrid/LexEVSGridService}}
If you are using {{localhost}} then your browser must be running on the same server as LexEVS.
|!Grid_Service_home.PNG|alt=Default web page after successful start of LexEVS Grid Services.! |

If you see the typical Axis service message then you have successfully installed the LexEVS Grid Service.
*Congratulations*!

h2. Troubleshooting

Deployment errors may occur if all instances of references in the application-config-client.xml are not correctly configured with the web address of a Remote API install.

{scrollbar:icons=false}