Skip navigation
Currently Being Moderated

Installing the VistA Outreach registration application on the OpenVista Appliance

VERSION 5  Click to view document history
Created on: Sep 22, 2008 8:26 PM by Jonathan Tai - Last Modified:  Sep 28, 2008 2:22 PM by Fernando Telesca

The VistA Outreach registration application relies on a web services layer, which in turn relies on EsiObjects to communicate with VistA.  The instructions provided by VistA Outreach are for WorldVistA EHR running on RedHat Linux, so some adaptations are necessary to run on the Ubuntu-based OpenVista Appliance.

 

  1. Download and read the master installation instructions document from http://vistaoutreach.svn.sourceforge.net/viewvc/vistaoutreach/VOEDocumentation/Registration/Registration_Installation.doc?view=log
  2. Download and read the platform-specific (in our case, we want GT.M on Linux) EsiObjects install document from http://vistaoutreach.svn.sourceforge.net/viewvc/vistaoutreach/VistAWebServices/VOEWebServices/doc/
  3. Download and unpack the eo_server_gtm_xxxx.tar file as instructed; you can skip the Client for now.
  4. Create an empty /etc/sysconfig directory before running the installer:
sudo mkdir /etc/sysconfig

 

  1. Run the installer:
sudo bash setup

These files won't copy correctly; this is okay:

    • /etc/profile.d/esiobjects.sh
    • /etc/profile.d/gtm.sh
    • /etc/sysconfig/esiobjects

 

  1. Change /opt/openvista/demo/gtmprofile.in to read:
#!/bin/bash

export gtm_dist=/opt/gtm
export openvista_dist=@@OPENVISTA_DIST@@

export EsiObjects_Source="/usr/local/esiobjects/user"
export esiobjectsdir=/usr/local/esiobjects

export esiobjects_config="/etc/sysconfig/esiobjects"

export PATH=$PATH:$gtm_dist

export gtmgbldir=$openvista_dist/globals/mumps.gld
export gtmroutines="$openvista_dist/objects($openvista_dist/routines/development $openvista_dist/routines/hotfixes $openvista_dist/routines/customer $openvista_dist/routines/medsphere) $esiobjectsdir/source $EsiObjects_Source $openvista_dist/objects($openvista_dist/routines/vendor $openvista_dist/routines/foia) $gtm_dist"

 

  1. Change /opt/openvista/demo/globals/gde-commands.in to read:
CHANGE -SEGMENT DEFAULT -ACCESS_METHOD=BG -BLOCK_SIZE=4096 -ALLOCATION=1024 -EXTENSION_COUNT=1024 -GLOBAL_BUFFER_COUNT=4096 -FILE=@@OPENVISTA_DIST@@/globals/default.dat
CHANGE -REGION DEFAULT -RECORD_SIZE=4080 -KEY_SIZE=255 -JOURNAL=BEFORE_IMAGE -DYNAMIC_SEGMENT=DEFAULT
TEMPLATE -SEGMENT -ACCESS_METHOD=BG -BLOCK_SIZE=2048 -ALLOCATION=100 -EXTENSION_COUNT=20000 -GLOBAL_BUFFER_COUNT=1024
TEMPLATE -REGION -RECORD_SIZE=1024 -KEY_SIZE=252 -NOJOURNAL
ADD -SEGMENT ESI -FILE=/usr/local/esiobjects/data/esi.dat
ADD -REGION ESI -DYNAMIC_SEGMENT=ESI
ADD -NAME VES* -REGION=ESI
ADD -SEGMENT USER -FILE=/usr/local/esiobjects/data/user.dat
ADD -REGION USER -DYNAMIC_SEGMENT=USER
ADD -NAME VESVW* -REGION=USER
TEMPLATE -SEGMENT -ACCESS_METHOD=BG -BLOCK_SIZE=4096 -ALLOCATION=1024 -EXTENSION_COUNT=1024 -GLOBAL_BUFFER_COUNT=4096
TEMPLATE -REGION -RECORD_SIZE=4080 -KEY_SIZE=255 -NOJOURNAL
ADD -SEGMENT SCRATCH -FILE=@@OPENVISTA_DIST@@/globals/scratch.dat
ADD -REGION SCRATCH -DYNAMIC_SEGMENT=SCRATCH
ADD -NAME TMP -REGION=SCRATCH
ADD -NAME TEMP -REGION=SCRATCH
ADD -NAME XTMP -REGION=SCRATCH
ADD -NAME UTILITY -REGION=SCRATCH
TEMPLATE -REGION -RECORD_SIZE=4080 -KEY_SIZE=255 -JOURNAL=BEFORE_IMAGE

 

  1. Re-run configure to build a new gtmprofile and global directory file:
cd /opt/openvista/demo
./configure -r 9201

 

  1. Start the listener:
cd /opt/openvista/demo
sudo -s
. ./gtmprofile
mumps -run ^VESOGTCM

 

TODO: adapt the /etc/init.d/esiobjects script to work on Ubuntu so that we can configure the listener to start on boot

 

  1. Download VistAWebServices.opl from http://vistaoutreach.svn.sourceforge.net/viewvc/vistaoutreach/VistAWebServices/VOEWebServices/EsiObjects/Export/VistAWebServices/VistAWebServices.opl?view=log
  2. Download and install the EsiObjets Windows Client as instructed earlier in the document.  Use it to import the VistAWebServices.opl file.  Note: importing the VistAWebServices.opl file using the Command Line Tool would have been simpler, but it doesn't seem to work - the ^VESOUIMP routine just returns immediately after you select a file without actually doing anything.  If you try to log into the Registration application without properly importing the .opl file, you get the following exception: RegLogin:LoginRequest  JAXRPC.TIE.04: Internal Server Error (JAXRPCTIE01: caught exception while handling request: java.rmi.RemoteException: createConnection():: Unable to create a remote instance of the VistAWebServices; nested exception is:         com.esitechnology.eo.ServiceErrorException: OOP Execution Error - Runtime: (1) - Nonexistent Class Library VistAWebServicesClass: SessionOID: N%obj(1)<External Call>Service:   System>StartupCalled by <External Call>)
  3. Download the VOE Registration Installation and Configuration guide from http://vistaoutreach.svn.sourceforge.net/viewvc/vistaoutreach/VOEDocumentation/Registration/VOEJ2EEINSTALL.doc?view=log
  4. Install Java 1.6 on the Appliance:
sudo apt-get install sun-java6-jre sun-java6-jdk

 

  1. Download and install the Sun Java System Application Server 9.0 Update 1 from Sun's web site.  Do not use the latest version (9.1) - it doesn't work.  When using 9.1, the following exception occurs: /RegLogin.jsp(5,63) PWC6341: According to the TLD, deferred-value is specified for the attribute id of the tag handler com.sun.webui.jsf.component.PageTag, but the argument for the setter method is not a javax.el.ValueExpression.
  2. Follow the rest of the instructions in the VOE Registration Installation and Configuration guide to configure the application server and deploy the two .war files.  You can download the .war files here and here.  Since Apache is already running on the appliance, you should leave the the application server running on the default port 8080. 
  3. When you have deployed the .war files, re-configured them, and restarted the application server, launch Firefox and browse to http://localhost:8080/Registration.  Log in with sm1234 for the username and sm1234!! for the password. 

 

Other Notes

 

For registration to work, you must first add a VISTA OFFICE EHR entry to the TYPE OF PATIENT file in OpenVista.

 

TODO: Registering a patient works, but the patient's address is not saved.  The error is:

 

Patient Add Failed EsiObjects Access Exception: OOP Execution Error - Trapped: (0) - Error: Error Code: M_Z150373978 () Is MissingAt: Method: VistAWebServices$VistAServices.Registration::AddNewPatient, Version: 12 <Main>+80Called by: Method: VistAWebServices$VistAServices.Registration::AddNewPatient, Version: 12 <Main>+71Supplemental:%GTM-E-ZLINKFILERaw: 150373978,0+59^VESVW01P,%GTM-E-ZLINKFILE, Error while zlinking "MPIFAG1",%GTM-E-FILENOTFND, File MPIFAG1 not foundClass: VistAServicesOID: N^VESoshob(2) Activate Temporary Address

 

It looks like we need to track down the missing MPIFAG1 routine.

Average User Rating
(0 ratings)

Bookmarked By (1)

More Like This

  • Retrieving data ...