Installation Guide

Please read this guide carefully. It will take you through the setup of the MARC-HI CTS service for 3M's Health Data Dictionary (HDD) on a OpenSuSE linux host.

The 3M CTS service uses the .NET framework 2.0 and runs within either Apache or IIS. This document will guide you through installation of the 3M CTS service on an OpenSuSE or SLES distribution.

Table of Contents

  1. Installation Pre-requisites
  2. Configuring Apache2
  3. Configuring Novell Mono XSP2
  4. Deploying the binary distribution
  5. License

1. Installation Pre-Requisites

Prior to installation of MARC-HI 3M CTS Client, it is recommended that you have the following setup:

  • A copy of 3M's Health Data Dictionary on Oracle 10g
  • OpenSUSE 10.x or Novell SLES 10.x better
  • Oracle Client for Linux

This installation guide will walk you through the following setup stages:

  • Apache2
  • Novell Mono 2.x or better

You should also have this information handy:

  • The IP address of the machine that you're working on
  • The connections details to the Oracle Instance

2. Configuring Apache2

The first support application that needs to be installed is the Apache2 application server.

To do this, use the following command on SuSE:

 # yast2 -i apache2

3. Configuring Novell Mono XSP 2

The installation of Novell Mono has to be done in two steps. First, we'll install the Mono framework. This can be done automatically using zypper

 # zypper addrepo http://ftp.novell.com/pub/mono/download-stable/openSUSE_11.2 mono-stable 
# zypper refresh --repo mono-stable
# yast2 -i mono-complete mono-data-oracle mono-wcf mono-web

Next, we need to download the mod_mono module for apache2

 # yast2 -i apache2-mod_mono

Then, we want to update our copy of mono

 # zypper dist-upgrade --repo mono-stable

4. Deploying the binary distribution

The first step to deploying the binary distribution involves un-taring the distribution to a directory that is accessible to the www-data user. To do this, we'll first need to unpack the distribution

 # tar -xf mmm-cts-0.5.tar.bz2

Now the package needs to be placed in a global directory that all users can access, usually this is /opt

 # mkdir /opt/share{/,/mmm-cts}
# mv ./mmm-cts-0.5 /opt/share/mmm-cts/0.5
# chgrp -R www /opt/share/mmm-cts/0.5
# chown -R wwwrun /opt/share/mmm-cts/0.5
# chmod 744 -R /opt/share/mmm-cts/0.5

Next, you need to update the cts configuration file so that it points to your valid oracle instance containing the 3M HDD database. To do this, edit the following options in /opt/share/mmm-cts/0.5/web.config

Substitute HOST=hdddb with the IP address of your database server and User Id=xxxx; Passsword=xxxxx; with the appropriate username and password for your HDD schema.

Now the service needs to be registered under the Mono-XSP service. To do this, we create a webapp file in /etc/xsp/2.0/applications-available file. Do this using the following command

# cat > /etc/xsp/2.0/applications-available/mmm-cts.webapp << EOF 
<apps>
<web-application>
<name>3M CTS Service</name>
<vpath>/mmm-cts</vpath>
<path>/opt/share/mmm-cts/0.5</path>
</web-application>
</apps>
EOF

Now you need to enable the application, do this via a symbolic link.

 # ln -s /etc/xsp/2.0/applications-available/mmm-cts.webapp /etc/xsp/2.0/application-enabled/mmm-cts.webapp

Next, we need to add a virtual directory and MonoHandler configuration entry. This instructs apache to execute the xsp handler when the cts service is called. Edit the /etc/apache2/conf.2/mod_mono.conf file so it looks like this:

Ensure these lines exist
 <IfModule mod_mono.c>
MonoUnixSocket default /tmp/.mod_mono_server2
MonoServerPath default /usr/bin/mod-mono-server2
MonoApplicationsConfigDir default /etc/xsp/2.0/applications-enabled
MonoPath default /usr/lib/mono/2.0:/usr/lib:/usr/lib/mono/2.0
</IfModule>
Add these lines
<IfModule mod_mono.c>
Alias /mmm-cts "/opt/share/mmm-cts/0.5"
AddMonoApplications default "/mmm-cts:/opt/share/mmm-cts/0.5"
<Location /mmm-cts>
Order deny,allow
Allow from all
SetHandler mono
</Location>
</IfModule>

You'll now need to restart apache, to do this execute the following command:

 # rcapache2 restart

You should now be able to open up the message browser service screen in a web-browser. Navigate to :

http://localhost/mmm-cts/messagebrowser.asmx