Skip to content

Manual Installation Guide

Setting Up WSO2 API Manager for Healthcare

Prerequisites

  1. Download supported base distribution of WSO2 API Manager and WSO2 Healthcare APIM Accelerator. Refer to the Product Compatibilities.

Installation Steps

  1. Extract WSO2 APIM product. Let's call it <WSO2_APIM_HOME>.
  2. Navigate to <WSO2_APIM_HOME>/bin directory and execute the update command based on the operating system to bring WSO2 API Manager up to date by running the Update Tool.
  3. You can try the following commands based on your Operating system to update the WSO2 API Manager. As an example, if you are Mac user, we need to execute the following commands.

    Provide your wso2 credentials and update the tool.

    ./wso2update_darwin
    

    Check the latest update level for the product.

    ./wso2update_darwin check
    

    Update the product to the latest update level.

    ./wso2update_darwin --level 4.2.0.<LATEST_UPDATE_LEVEL>
    

    Check the current state of your product.

    ./wso2update_darwin current-state
    

  4. Extract WSO2 OH APIM Accelerator to <WSO2_APIM_HOME>. Let's call it <WSO2_OH_APIM_ACC_HOME>.

  5. [Optional] Check the accelerator configurations in <WSO2_HC_APIM_ACC_HOME>/conf/config.toml file to enable or disable features.
Note

Accelerator configs looks like below;

Setting Description Configuration Option Default Value
Enable or disable auto-generation of the FHIR capability statement enable_fhir_metadata_endpoint true
Enable or disable the well-known endpoint for OAuth 2.0 discovery enable_well_known_endpoint true
Enable or disable the SMART on FHIR features enable_smart_on_fhir true
Enable or disable developer sign-up and app creation approval enable_developer_workflow false
Enable or disable the healthcare theme enable_healthcare_theme true
  1. Navigate to <WSO2_OH_APIM_ACC_HOME/bin> directory and execute the following command. This will copy the artifacts to the WSO2 APIM and add the required configurations.

    ./merge.sh
    

  2. Navigate to <WSO2_APIM_HOME> directory and execute following command to start the APIM server with WSO2 OH Accelerators.

    ./bin/api-manager.sh
    

Note

Running ./bin/merge.sh script creates a audit log folder in the product home. Structure of it looks like below;

hc-accelerator
├── backup
│   ├── conf
│   ├── jaggeryapps
│   └── webapps
└── merge_audit.log
  • merge_audit.log will have an audit line per execution of the merge.sh script of the accelerator. Each line contains execution date and time, user account and the version of the accelerator. Example log line is below;
    Mon May 31 22:01:55 +0530 2021 - john - WSO2 Healthcare API Manager 1.0.0 Accelerator - v1.0.0
    
  • backup folder contains the files that were originally there in the APIM product before running the accelerator. Please note that only the last state will be there.

Product Compatibilities

Product Compatible Healthcare Accelarator
APIM 4.2.0
APIM HC Accelerator 1.0.0

Setting Up Integration Layer for Healthcare

Note

WSO2 Healthcare Solution offers two distinct solutions (Ballerina and Micro Integrator) each tailored to different architectural preferences. For systems that favor the Enterprise Service Bus (ESB) pattern, the Micro Integrator, enhanced with FHIR accelerators, can be utilized.
On the other hand, Ballerina, a programming language specifically designed for integrations, is ideal for implementing FHIR integrations structured as microservices.

Installation Steps

Go through the following steps to setup the Ballerina.

  1. Follow the instructions in the Ballerina Installation Options to install Ballerina runtime.

  2. Setup the Ballerina VSCode extension by following the instructions in the Ballerina VSCode Extension guide.

Installation Steps

Go through the following steps to setup the Micro Integrator server.

  1. Install WSO2 Micro Integrator Server runtime.

  2. Install WSO2 Micro Integrator Extension in VSCode.

  3. In the downloaded WSO2 Micro Integrator pack, the following configurations need to be done. Go to [WSO2-MI-HOME]/conf/deployment.toml file.

  4. Add the following configurations.
    [[custom_message_formatters]]
    class = "org.apache.synapse.commons.json.JsonStreamFormatter"
    content_type = "application/json+fhir"
    
    [[custom_message_builders]]
    class = "org.apache.synapse.commons.json.JsonStreamBuilder"
    content_type = "application/json+fhir"
    
    [[custom_message_formatters]]
    class = "org.apache.synapse.commons.json.JsonStreamFormatter"
    content_type = "application/fhir+json"
    
    [[custom_message_builders]]
    class = "org.apache.synapse.commons.json.JsonStreamBuilder"
    content_type = "application/fhir+json"
    
    [[custom_message_formatters]]
    class = "org.apache.axis2.transport.http.ApplicationXMLFormatter"
    content_type = "application/xml+fhir"
    
    [[custom_message_builders]]
    class = "org.apache.axis2.builder.ApplicationXMLBuilder"
    content_type = "application/xml+fhir"
    
    [[custom_message_formatters]]
    class = "org.apache.axis2.transport.http.ApplicationXMLFormatter"
    content_type = "application/fhir+xml"
    
    [[custom_message_builders]]
    class = "org.apache.axis2.builder.ApplicationXMLBuilder"
    content_type = "application/fhir+xml"