The Hygieia Executive Dashboard API layer contains all common REST API services that work with the source system data, which the service tasks collect.
Hygieia uses Spring Boot to package the API as an executable JAR file with dependencies.
Setup Instructions
To configure the Hygieia Executive API layer, execute the following steps:
-
Step 1: Run Maven Build
To package the API source code into an executable JAR file, run the Maven build from the
/HygieiaExecutive
directory of your source code installation:mvn clean install
The output file
api.jar
is generated in the/api/target
folder. -
Step 2: Set Parameters in the API Properties File
Set the configurable parameters in the
api.properties
file to connect to the dashboard MongoDB database instance, including properties required by the API module. To configure the parameters, refer to the API properties file.For more information about the server configuration, see the Spring Boot documentation.
-
Step 3: Run the API
To run the executable file, change directory to ‘api/target’ and then execute the following command from the command prompt:
java -jar ./api.jar -Djasypt.encryptor.password=hygieiasecret --spring.config.location=[path to]/Hygieia/api/api.properties -Djasypt.encryptor.password=hygieiasecret #[-Djasypt.encryptor.password= This is required for passing encrypted passwords]
Verify API access from the web browser using the URL: http://localhost:8080/api/ping.
By default, the server starts at port
8080
and uses the context path/api
. You can configure these values in theapi.properties
file for the following properties:server.contextPath=/api server.port=8080
Note: The ‘jasypt.encryptor.password’ system property is used to decrypt the database password.
API Properties File
The sample api.properties
file lists parameters with sample values to configure the API layer. Set the parameters based on your environment setup.
dbname=<b_name>
dbusername=<db_user>
dbpassword=<db_pwd>
dbhostport=<hostname>:<port>
# IP of the Tomcat server running the API
server.address=<host_ip>(default is 8080)
server.port=<server port running the api>