hapi-fhir/hapi-fhir-jpaserver-example
James Agnew 2f2900e837 Improve indexing on JPA server in anticipation of a new indexing
strategy in HAPI FHIR 3.5.0
2018-05-23 08:09:57 -04:00
..
src Improve indexing on JPA server in anticipation of a new indexing 2018-05-23 08:09:57 -04:00
.gitignore Add Eclipse files to git 2016-02-28 14:02:29 -05:00
Dockerfile Add Dockerfile and build script for the jpaserver-example. 2016-11-18 11:00:35 +01:00
README.md add mini tutorial about the elasticsearch integration in ReadMe 2017-12-21 17:17:33 +01:00
build-docker-image.sh Add Dockerfile and build script for the jpaserver-example. 2016-11-18 11:00:35 +01:00
pom.xml Replace phloc with ph for #775 (#930) 2018-05-14 17:38:40 -04:00

README.md

Running hapi-fhir-jpaserver-example in Tomcat from IntelliJ

Install Tomcat.

Make sure you have Tomcat set up in IntelliJ.

  • File->Settings->Build, Execution, Deployment->Application Servers
  • Click +
  • Select "Tomcat Server"
  • Enter the path to your tomcat deployment for both Tomcat Home (IntelliJ will fill in base directory for you)

Add a Run Configuration for running hapi-fhir-jpaserver-example under Tomcat

  • Run->Edit Configurations
  • Click the green +
  • Select Tomcat Server, Local
  • Change the name to whatever you wish
  • Uncheck the "After launch" checkbox
  • On the "Deployment" tab, click the green +
  • Select "Artifact"
  • Select "hapi-fhir-jpaserver-example:war"
  • In "Application context" type /hapi

Run the configuration.

  • You should now have an "Application Servers" in the list of windows at the bottom.
  • Click it.
  • Select your server, and click the green triangle (or the bug if you want to debug)
  • Wait for the console output to stop

Point your browser (or fiddler, or what have you) to http://localhost:8080/hapi/base/Patient

You should get an empty bundle back.

Running hapi-fhir-jpaserver-example in a Docker container

Execute the build-docker-image.sh script to build the docker image.

Use this command to start the container: docker run -d --name hapi-fhir-jpaserver-example -p 8080:8080 hapi-fhir/hapi-fhir-jpaserver-example

Note: with this command data is persisted across container restarts, but not after removal of the container. Use a docker volume mapping on /var/lib/jetty/target to achieve this.

Using ElasticSearch as the search engine instead of the default Apache Lucene

  1. Install ElasticSearch server and the phonetic plugin
  2. Replace configuration in web.xml
    • replace the configuration class ca.uhn.fhir.jpa.demo.FhirServerConfig in web.xml by ca.uhn.fhir.jpa.demo.elasticsearch.FhirServerConfig
  3. Start server by runing: mvn jetty:run
  4. Limitations: