| 1 |
HIS is a hospital information system currently in development. |
|---|
| 2 |
|
|---|
| 3 |
For more information see http://www.joiningtracks.org |
|---|
| 4 |
|
|---|
| 5 |
-------------------------------------------------------------------------------- |
|---|
| 6 |
Environment setup |
|---|
| 7 |
-------------------------------------------------------------------------------- |
|---|
| 8 |
|
|---|
| 9 |
1. Installing MySQL 5.0.x. |
|---|
| 10 |
|
|---|
| 11 |
- Download MySQL 5.0.x from http://dev.mysql.com/downloads/mysql/5.0.html#downloads |
|---|
| 12 |
- Install MySQL according to the installation instructions. |
|---|
| 13 |
|
|---|
| 14 |
Development |
|---|
| 15 |
- Create a new database called 'build_his'. |
|---|
| 16 |
- Create the MySQL user 'build' |
|---|
| 17 |
- Grant user 'build' access to the 'build_his' database |
|---|
| 18 |
|
|---|
| 19 |
- Change 'data/src/test/resources/test.properties' |
|---|
| 20 |
with the right database connection parameters. For an overview of the parameters, see the previous item. |
|---|
| 21 |
The following properties need to be changed (default value is displayed): |
|---|
| 22 |
jdbc.url=jdbc:mysql://localhost:3306/his?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8 |
|---|
| 23 |
jdbc.username=build |
|---|
| 24 |
jdbc.password=build |
|---|
| 25 |
|
|---|
| 26 |
- Change 'configuration/default/tomcat/conf/his.properties' |
|---|
| 27 |
with the right database connection parameters. For an overview of the parameters, see the previous item. |
|---|
| 28 |
The following properties need to be changed (default value is displayed): |
|---|
| 29 |
jdbc.url=jdbc:mysql://localhost:3306/his?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8 |
|---|
| 30 |
jdbc.username=build |
|---|
| 31 |
jdbc.password=build |
|---|
| 32 |
|
|---|
| 33 |
Production / local testing |
|---|
| 34 |
- Create a new database called 'his'. |
|---|
| 35 |
- Create the MySQL user 'his-user' |
|---|
| 36 |
- Grant user 'his-user' access to the 'his' database |
|---|
| 37 |
- Change 'configuration/production/tomcat/conf/his.properties' |
|---|
| 38 |
with the right database connection parameters. |
|---|
| 39 |
The following properties need to be changed (default value is displayed): |
|---|
| 40 |
jdbc.url=jdbc:mysql://localhost:3306/his?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8 |
|---|
| 41 |
jdbc.username=his-user |
|---|
| 42 |
jdbc.password=password |
|---|
| 43 |
|
|---|
| 44 |
2. Installing eXist 1.2.1. |
|---|
| 45 |
|
|---|
| 46 |
For healthrecords a XML database is used, in our case the open source XML |
|---|
| 47 |
database eXist. The release we use is: 1.2.1.. |
|---|
| 48 |
|
|---|
| 49 |
- Download eXist 1.2.1 from http://exist.sourceforge.net/download.html |
|---|
| 50 |
- Start the installation by running 'java -jar eXist-xxx.jar' |
|---|
| 51 |
- See http://exist.sourceforge.net/quickstart.html for more information |
|---|
| 52 |
- Open http://localhost:8080/exist/admin/admin.xql with username admin |
|---|
| 53 |
- Create the collection: /his/healthrecords |
|---|
| 54 |
- Create user 'build'. |
|---|
| 55 |
- Assign build as owner of the collection /his/healthrecords |
|---|
| 56 |
- Change 'data/src/test/resources/test.properties' |
|---|
| 57 |
'configuration/default/tomcat/conf/his.properties' |
|---|
| 58 |
'configuration/production/tomcat/conf/his.properties' |
|---|
| 59 |
to contain the right eXist connection parameters. |
|---|
| 60 |
xmldb.url=xmldb:exist://localhost:8080/exist/xmlrpc/db |
|---|
| 61 |
xmldb.username=build |
|---|
| 62 |
xmldb.password=build |
|---|
| 63 |
|
|---|
| 64 |
3. Installing LDAP |
|---|
| 65 |
|
|---|
| 66 |
Patients are also stored in an LDAP directory, to allow integration with the Calendar Server. |
|---|
| 67 |
So to fully test the system, you will have to setup an LDAP directory |
|---|
| 68 |
and configure his.properties file accordingly to match your setup. |
|---|
| 69 |
Installing LDAP is not covered here. We currently use Apple Open Directory in the production environment. |
|---|
| 70 |
|
|---|
| 71 |
- Change 'data/src/test/resources/test.properties' |
|---|
| 72 |
'configuration/default/tomcat/conf/his.properties' |
|---|
| 73 |
'configuration/production/tomcat/conf/his.properties' |
|---|
| 74 |
to contain the right LDAP connection parameters. |
|---|
| 75 |
ldap.url=ldap://localhost:389 |
|---|
| 76 |
ldap.baseDn=dc=kantoor,dc=obesitaskliniek,dc=nl |
|---|
| 77 |
ldap.userDn=uid=helpdesk,cn=users,dc=kantoor,dc=obesitaskliniek,dc=nl |
|---|
| 78 |
ldap.password=password |
|---|
| 79 |
|
|---|
| 80 |
4. Installing Calendar Server |
|---|
| 81 |
|
|---|
| 82 |
We currently use Apple Calendar Service (http://www.apple.com/server/macosx/features/ical.html) |
|---|
| 83 |
in the production environment. This is an open source calendar service that can be installed without using |
|---|
| 84 |
Mac OS X Leopard Server. You need to have Python installed, as it is written in Python. |
|---|
| 85 |
For more information, see: http://trac.calendarserver.org/ |
|---|
| 86 |
- Install the Calendar Service by following the instructions found at |
|---|
| 87 |
http://trac.calendarserver.org/wiki/QuickStart |
|---|
| 88 |
- Normally, Calendar Server uses Open Directory for authentication. For testing locally, you can create |
|---|
| 89 |
an accounts-test.xml with usernames and passwords. See http://trac.calendarserver.org/wiki/XMLDirectoryService |
|---|
| 90 |
for more information. Create an admin user in the file accounts-test.xml: |
|---|
| 91 |
<accounts realm="Test Realm"> |
|---|
| 92 |
<user> |
|---|
| 93 |
<uid>admin</uid> |
|---|
| 94 |
<guid>admin</guid> |
|---|
| 95 |
<password>admin</password> |
|---|
| 96 |
<name>Super User</name> |
|---|
| 97 |
</user> |
|---|
| 98 |
</accounts> |
|---|
| 99 |
|
|---|
| 100 |
- Change 'data/src/test/resources/test.properties' |
|---|
| 101 |
'configuration/default/tomcat/conf/his.properties' |
|---|
| 102 |
'configuration/production/tomcat/conf/his.properties' |
|---|
| 103 |
to contain the right Calendar Server connection parameters. |
|---|
| 104 |
caldav.host=localhost |
|---|
| 105 |
caldav.port=8010 |
|---|
| 106 |
caldav.root=/calendars/ |
|---|
| 107 |
caldav.username=admin |
|---|
| 108 |
caldav.password=admin |
|---|
| 109 |
|
|---|
| 110 |
5. Installing the certificate for the communication with the Vecozo webservice. |
|---|
| 111 |
|
|---|
| 112 |
We use one of the Vecozo webservices to verify and support the creation of new patients in the system. |
|---|
| 113 |
To make a secure connection to the Vecozo webservice we need to do some configuration. |
|---|
| 114 |
|
|---|
| 115 |
- Open the 'vecozo/src/main/resources/vecozo-client.properties' |
|---|
| 116 |
Change the following properties to: |
|---|
| 117 |
webservice.endpoint.uri=https://uri.to.the.secure.webservice/webservice/ |
|---|
| 118 |
truststore.location=/location/to/certificate.extention |
|---|
| 119 |
truststore.password=thepasswordofthecertificate |
|---|
| 120 |
|
|---|
| 121 |
Make sure you use secured http (https://) connection instead of a regular http connection (http://) |
|---|
| 122 |
|
|---|
| 123 |
-------------------------------------------------------------------------------- |
|---|
| 124 |
Running HIS |
|---|
| 125 |
-------------------------------------------------------------------------------- |
|---|
| 126 |
|
|---|
| 127 |
* Deployment / Development mode |
|---|
| 128 |
|
|---|
| 129 |
You have to specify a Java System property called "config.directory" and give |
|---|
| 130 |
it the value of the directory on the filesystem where the configuration files |
|---|
| 131 |
are located. Typically, this is done by using the -D option on the |
|---|
| 132 |
commandline. When using the StartSite convenience runner, this property is set |
|---|
| 133 |
to the development configuration directory for you automatically. |
|---|
| 134 |
|
|---|
| 135 |
There are three means to configure Wickets configuration mode and they are |
|---|
| 136 |
tested in the order given. |
|---|
| 137 |
|
|---|
| 138 |
1) A system property: -Dwicket.configuration |
|---|
| 139 |
2) servlet specific <init-param> |
|---|
| 140 |
3) context specific <context-param> |
|---|
| 141 |
|
|---|
| 142 |
The value might be either "development" (reloading when templates change) |
|---|
| 143 |
or "deployment". If no configuration is found, "development" is the default. |
|---|
| 144 |
|
|---|
| 145 |
~ |
|---|
| 146 |
|
|---|
| 147 |
By default, HIS internal frontend will run in "deployment" mode, as configured |
|---|
| 148 |
via option 2, in web.xml. The StartSite runner sets a system property. |
|---|