You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2018/08/20 17:27:46 UTC
[camel] branch master updated: CAMEL-12736 Create FHIR
authorization and transaction quickstart (#2484)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/master by this push:
new f68af36 CAMEL-12736 Create FHIR authorization and transaction quickstart (#2484)
f68af36 is described below
commit f68af36c00a638fe73b429d62a6b78ac9872af49
Author: Rafal Korytkowski <ra...@gmail.com>
AuthorDate: Mon Aug 20 19:27:44 2018 +0200
CAMEL-12736 Create FHIR authorization and transaction quickstart (#2484)
---
examples/README.adoc | 6 +-
.../camel-example-fhir-auth-tx-spring-boot/pom.xml | 167 +++++++++++++++++++++
.../readme.adoc | 79 ++++++++++
.../src/main/data/patients.csv | 2 +
.../main/java/sample/camel/MyCamelApplication.java | 35 +++++
.../src/main/java/sample/camel/MyCamelRouter.java | 48 +++---
.../src/main/resources/application.properties | 56 +++++++
.../java/sample/camel/MyCamelApplicationTest.java | 55 +++++++
.../src/main/java/sample/camel/MyCamelRouter.java | 2 +-
examples/pom.xml | 1 +
10 files changed, 421 insertions(+), 30 deletions(-)
diff --git a/examples/README.adoc b/examples/README.adoc
index 8fbdafb..f242495 100644
--- a/examples/README.adoc
+++ b/examples/README.adoc
@@ -11,7 +11,7 @@ View the individual example READMEs for details.
### Examples
// examples: START
-Number of Examples: 107 (8 deprecated)
+Number of Examples: 109 (8 deprecated)
[width="100%",cols="4,2,4",options="header"]
|===
@@ -29,6 +29,8 @@ Number of Examples: 107 (8 deprecated)
| link:camel-example-console/README.md[Console] (camel-example-console) | Beginner | An example that reads input from the console
+| link:camel-example-fhir-auth-tx-spring-boot/readme.adoc[Fhir Auth Tx Spring Boot] (camel-example-fhir-auth-tx-spring-boot) | Beginner | An example showing how to work with Camel, FHIR Authorization, FHIR Transaction and Spring Boot
+
| link:camel-example-fhir-spring-boot/readme.adoc[Fhir Spring Boot] (camel-example-fhir-spring-boot) | Beginner | An example showing how to work with Camel, Fhir and Spring Boot
| link:camel-example-ftp/README.md[FTP] (camel-example-ftp) | Beginner | An example for showing Camel FTP integration
@@ -171,6 +173,8 @@ Number of Examples: 107 (8 deprecated)
| link:camel-example-cxf-blueprint/README.md[CXF Blueprint] (camel-example-cxf-blueprint) | OSGi | An example which use a CXF consumer and the OSGI HTTP Service
+| link:camel-example-ehcache-blueprint/README.md[Ehcache Blueprint] (camel-example-ehcache-blueprint) | OSGi | An example using Ehcache with OSGi Blueprint
+
| link:camel-example-fhir-osgi/README.md[Fhir Osgi] (camel-example-fhir-osgi) | OSGi | An example running Camel FHIR in Apache Karaf
| link:camel-example-netty-http/README.md[Netty HTTP] (camel-example-netty-http) | OSGi | An example showing how to use a shared Netty HTTP server with multiple Camel applications in OSGi container
diff --git a/examples/camel-example-fhir-auth-tx-spring-boot/pom.xml b/examples/camel-example-fhir-auth-tx-spring-boot/pom.xml
new file mode 100644
index 0000000..daf0200
--- /dev/null
+++ b/examples/camel-example-fhir-auth-tx-spring-boot/pom.xml
@@ -0,0 +1,167 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.camel.example</groupId>
+ <artifactId>examples</artifactId>
+ <version>2.23.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>camel-example-fhir-auth-tx-spring-boot</artifactId>
+ <name>Camel :: Example :: Fhir :: Spring Boot</name>
+ <description>An example showing how to work with Camel, FHIR Authorization, FHIR Transaction and Spring Boot</description>
+
+ <properties>
+ <category>Beginner</category>
+
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+ <spring.boot-version>${spring-boot-version}</spring.boot-version>
+ </properties>
+
+ <dependencyManagement>
+ <dependencies>
+ <!-- Spring Boot BOM -->
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-dependencies</artifactId>
+ <version>${spring.boot-version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ <!-- Camel BOM -->
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-spring-boot-dependencies</artifactId>
+ <version>${project.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <dependencies>
+
+ <!-- Spring Boot -->
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-web</artifactId>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-tomcat</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-undertow</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-actuator</artifactId>
+ </dependency>
+
+ <!-- Camel -->
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-spring-boot-starter</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-fhir</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-csv</artifactId>
+ </dependency>
+
+ <dependency>
+ <groupId>ca.uhn.hapi</groupId>
+ <artifactId>hapi-structures-v24</artifactId>
+ </dependency>
+
+ <!-- test -->
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-test-spring</artifactId>
+ <scope>test</scope>
+ </dependency>
+
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ <version>${spring-boot-version}</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>repackage</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.camel</groupId>
+ <artifactId>camel-maven-plugin</artifactId>
+ <version>${project.version}</version>
+ <!-- allows to fail if not all routes are fully covered during testing -->
+<!--
+ <configuration>
+ <failOnError>true</failOnError>
+ </configuration>
+-->
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>jdk9+-build</id>
+ <activation>
+ <jdk>[9,)</jdk>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <argLine>--add-modules java.xml.bind --add-opens java.base/java.lang=ALL-UNNAMED</argLine>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
diff --git a/examples/camel-example-fhir-auth-tx-spring-boot/readme.adoc b/examples/camel-example-fhir-auth-tx-spring-boot/readme.adoc
new file mode 100644
index 0000000..37d50bc
--- /dev/null
+++ b/examples/camel-example-fhir-auth-tx-spring-boot/readme.adoc
@@ -0,0 +1,79 @@
+== FHIR Authorization and Transaction Example - Spring Boot
+
+=== Introduction
+
+This is an example application of the `camel-fhir` component. We'll be using `camel-spring-boot` as well for an easy setup.
+
+The Camel route is located in the `MyCamelRouter` class.
+
+This example will read patients stored in csv files from a directory and convert them to FHIR dtsu3 patients and upload them to a configured FHIR server. Each file is uploaded in a new transaction.
+
+The example assumes you have a running FHIR server at your disposal, which is configured for basic authentication.
+You may use [hapi-fhir-jpa-server-example](https://github.com/rkorytkowski/hapi-fhir/tree/basic-auth/hapi-fhir-jpaserver-example). You can start it up by running `mvn jetty:run`.
+
+By default, the example uses `http://localhost:8080/hapi-fhir-jpaserver-example/baseDstu3` as the FHIR server URL, DSTU3 as the FHIR version, BASIC authentication (`admin` as username and `Admin123` as password) and `target/work/fhir/input`
+as the directory to look for csv patients.
+
+However, you can edit the `application.properties` file to change the defaults and provide your own configuration.
+
+There is an example of a test in the `MyCamelApplicationTest` class, which mocks out the FHIR server, thus can be run without the FHIR server.
+
+=== Build
+
+You can build this example using:
+
+```sh
+$ mvn package
+```
+
+=== Run
+
+You can run this example using:
+
+```sh
+$ mvn spring-boot:run
+```
+
+When the Camel application runs, you should see a folder created under `target/work/fhir/input`. Copy the file `hl7v2.patient`
+located in the `src/main/data` folder into it. You should see the following output:
+```
+2018-07-24 11:52:51.615 INFO 30666 --- [work/fhir/input] fhir-example: Converting hl7v2.patient
+2018-07-24 11:52:52.700 INFO 30666 --- [work/fhir/input] fhir-example: Inserting Patient: {"resourceType":"Patient","id":"100005056","name":[{"family":"Freeman","given":["Vincent"]}]}
+2018-07-24 11:52:56.995 INFO 30666 --- [ #2 - CamelFhir] fhir-example: Patient created successfully: ca.uhn.fhir.rest.api.MethodOutcome@270f03f1
+```
+
+The Camel application can be stopped pressing <kbd>ctrl</kbd>+<kbd>c</kbd> in the shell.
+
+=== To get health check
+
+To show a summary of spring boot health check
+
+----
+curl -XGET -s http://localhost:8080/actuator/health
+----
+
+=== To get info about the routes
+
+To show a summary of all the routes
+
+----
+curl -XGET -s http://localhost:8080/actuator/camelroutes
+----
+
+To show detailed information for a specific route
+
+----
+curl -XGET -s http://localhost:8080/actuator/camelroutes/{id}/detail
+----
+
+
+=== Forum, Help, etc
+
+If you hit an problems please let us know on the Camel Forums
+<http://camel.apache.org/discussion-forums.html>
+
+Please help us make Apache Camel better - we appreciate any feedback you may have. Enjoy!
+
+The Camel riders!
+
+
diff --git a/examples/camel-example-fhir-auth-tx-spring-boot/src/main/data/patients.csv b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/data/patients.csv
new file mode 100644
index 0000000..a78f61b
--- /dev/null
+++ b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/data/patients.csv
@@ -0,0 +1,2 @@
+1a,Bob,Smith
+2a,Simon,Smith
\ No newline at end of file
diff --git a/examples/camel-example-fhir-auth-tx-spring-boot/src/main/java/sample/camel/MyCamelApplication.java b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/java/sample/camel/MyCamelApplication.java
new file mode 100644
index 0000000..36020f2
--- /dev/null
+++ b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/java/sample/camel/MyCamelApplication.java
@@ -0,0 +1,35 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package sample.camel;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+/**
+ * A sample Spring Boot application that starts the Camel routes.
+ */
+@SpringBootApplication
+public class MyCamelApplication {
+
+ /**
+ * A main method to start this application.
+ */
+ public static void main(String[] args) {
+ SpringApplication.run(MyCamelApplication.class, args);
+ }
+
+}
diff --git a/examples/camel-example-fhir-spring-boot/src/main/java/sample/camel/MyCamelRouter.java b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
similarity index 51%
copy from examples/camel-example-fhir-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
copy to examples/camel-example-fhir-auth-tx-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
index 1bdf3bb..44313a6 100644
--- a/examples/camel-example-fhir-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
+++ b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
@@ -16,19 +16,19 @@
*/
package sample.camel;
-import ca.uhn.hl7v2.HL7Exception;
-import ca.uhn.hl7v2.model.v24.message.ORU_R01;
-import ca.uhn.hl7v2.model.v24.segment.PID;
+import org.apache.camel.builder.RouteBuilder;
+
+import java.util.ArrayList;
+import java.util.List;
import org.apache.camel.LoggingLevel;
-import org.apache.camel.builder.RouteBuilder;
import org.apache.http.ProtocolException;
-
import org.hl7.fhir.dstu3.model.Patient;
import org.springframework.stereotype.Component;
+
/**
- * A simple Camel route that triggers from a timer and calls a bean and prints to system out.
+ * A simple Camel route that triggers from a file and pushes to a FHIR server.
* <p/>
* Use <tt>@Component</tt> to make Camel auto detect this route when starting.
*/
@@ -42,33 +42,25 @@ public class MyCamelRouter extends RouteBuilder {
.handled(true)
.log(LoggingLevel.ERROR, "Error connecting to FHIR server with URL:{{serverUrl}}, please check the application.properties file ${exception.message}")
.end()
- .onException(HL7Exception.class)
- .handled(true)
- .log(LoggingLevel.ERROR, "Error unmarshalling ${file:name} ${exception.message}")
- .end()
.log("Converting ${file:name}")
- // unmarshall file to hl7 message
- .unmarshal().hl7()
- // very simple mapping from a HLV2 patient to dstu3 patient
+ .unmarshal().csv()
.process(exchange -> {
- ORU_R01 msg = exchange.getIn().getBody(ORU_R01.class);
- final PID pid = msg.getPATIENT_RESULT().getPATIENT().getPID();
- String surname = pid.getPatientName()[0].getFamilyName().getFn1_Surname().getValue();
- String name = pid.getPatientName()[0].getGivenName().getValue();
- String patientId = msg.getPATIENT_RESULT().getPATIENT().getPID().getPatientID().getCx1_ID().getValue();
- Patient patient = new Patient();
- patient.addName().addGiven(name);
- patient.getNameFirstRep().setFamily(surname);
- patient.setId(patientId);
- exchange.getIn().setBody(patient);
+ List<Patient> bundle = new ArrayList<>();
+ @SuppressWarnings("unchecked")
+ List<List<String>> patients = (List<List<String>>) exchange.getIn().getBody();
+ for (List<String> patient: patients) {
+ Patient fhirPatient = new Patient();
+ fhirPatient.setId(patient.get(0));
+ fhirPatient.addName().addGiven(patient.get(1));
+ fhirPatient.getNameFirstRep().setFamily(patient.get(2));
+ bundle.add(fhirPatient);
+ }
+ exchange.getIn().setBody(bundle);
})
- // marshall to JSON for logging
- .marshal().fhirJson("{{fhirVersion}}")
- .log("Inserting Patient: ${body}")
// create Patient in our FHIR server
- .to("fhir://create/resource?inBody=resourceAsString&serverUrl={{serverUrl}}&fhirVersion={{fhirVersion}}")
+ .to("fhir://transaction/withResources?inBody=resources&serverUrl={{serverUrl}}&username={{serverUser}}&password={{serverPassword}}&fhirVersion={{fhirVersion}}")
// log the outcome
- .log("Patient created successfully: ${body}");
+ .log("Patients created successfully: ${body}");
}
}
diff --git a/examples/camel-example-fhir-auth-tx-spring-boot/src/main/resources/application.properties b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/resources/application.properties
new file mode 100644
index 0000000..34b663b
--- /dev/null
+++ b/examples/camel-example-fhir-auth-tx-spring-boot/src/main/resources/application.properties
@@ -0,0 +1,56 @@
+## ---------------------------------------------------------------------------
+## Licensed to the Apache Software Foundation (ASF) under one or more
+## contributor license agreements. See the NOTICE file distributed with
+## this work for additional information regarding copyright ownership.
+## The ASF licenses this file to You under the Apache License, Version 2.0
+## (the "License"); you may not use this file except in compliance with
+## the License. You may obtain a copy of the License at
+##
+## http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+## ---------------------------------------------------------------------------
+
+serverUrl=http://localhost:8080/hapi-fhir-jpaserver-example/baseDstu3
+serverUser=admin
+serverPassword=Admin123
+
+fhirVersion=DSTU3
+
+input=target/work/fhir/input
+
+# the name of Camel
+camel.springboot.name = MyCamel
+
+server.port=0
+
+# to automatic shutdown the JVM after a period of time
+#camel.springboot.duration-max-seconds=60
+#camel.springboot.duration-max-messages=100
+
+# add for example: &repeatCount=5 to the timer endpoint to make Camel idle
+#camel.springboot.duration-max-idle-seconds=15
+
+# expose actuator endpoint via HTTP
+management.endpoints.web.exposure.include=info,health,camelroutes
+
+# show verbose health details (/actuator/info) so you can see Camel information also
+management.endpoint.health.show-details=always
+
+# to turn off Camel info in (/actuator/info)
+management.info.camel.enabled=false
+
+# allow to obtain basic information about Camel routes (read only mode)
+management.endpoint.camelroutes.enabled = true
+management.endpoint.camelroutes.read-only = true
+
+# to configure logging levels
+#logging.level.org.springframework = INFO
+#logging.level.org.apache.camel.spring.boot = INFO
+#logging.level.org.apache.camel.impl = DEBUG
+#logging.level.sample.camel = DEBUG
+
diff --git a/examples/camel-example-fhir-auth-tx-spring-boot/src/test/java/sample/camel/MyCamelApplicationTest.java b/examples/camel-example-fhir-auth-tx-spring-boot/src/test/java/sample/camel/MyCamelApplicationTest.java
new file mode 100644
index 0000000..470e87e
--- /dev/null
+++ b/examples/camel-example-fhir-auth-tx-spring-boot/src/test/java/sample/camel/MyCamelApplicationTest.java
@@ -0,0 +1,55 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package sample.camel;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.apache.camel.EndpointInject;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.test.spring.CamelSpringBootRunner;
+import org.apache.camel.test.spring.EnableRouteCoverage;
+import org.apache.camel.test.spring.MockEndpointsAndSkip;
+import org.apache.commons.io.FileUtils;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+
+@RunWith(CamelSpringBootRunner.class)
+@SpringBootTest(classes = MyCamelApplication.class,
+ properties = "input = target/work/fhir/testinput")
+@EnableRouteCoverage
+@MockEndpointsAndSkip("fhir*")
+public class MyCamelApplicationTest {
+
+ @EndpointInject(uri = "mock:fhir:transaction/withResources")
+ private MockEndpoint mock;
+
+ @Before
+ public void copyData() throws IOException {
+ FileUtils.copyDirectory(new File("src/main/data"), new File("target/work/fhir/testinput"));
+ }
+
+ @Test
+ public void shouldPushConvertedCsvtoFhir() throws Exception {
+ mock.expectedMessageCount(1);
+
+ mock.assertIsSatisfied();
+ }
+
+}
diff --git a/examples/camel-example-fhir-spring-boot/src/main/java/sample/camel/MyCamelRouter.java b/examples/camel-example-fhir-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
index 1bdf3bb..21a7898 100644
--- a/examples/camel-example-fhir-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
+++ b/examples/camel-example-fhir-spring-boot/src/main/java/sample/camel/MyCamelRouter.java
@@ -28,7 +28,7 @@ import org.hl7.fhir.dstu3.model.Patient;
import org.springframework.stereotype.Component;
/**
- * A simple Camel route that triggers from a timer and calls a bean and prints to system out.
+ * A simple Camel route that triggers from a file and posts to a FHIR server.
* <p/>
* Use <tt>@Component</tt> to make Camel auto detect this route when starting.
*/
diff --git a/examples/pom.xml b/examples/pom.xml
index 033f274..80e6e4b 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -46,6 +46,7 @@
<module>camel-example-cdi-aws-s3</module>
<module>camel-example-cdi-cassandraql</module>
<module>camel-example-fhir</module>
+ <module>camel-example-fhir-auth-tx-spring-boot</module>
<module>camel-example-fhir-osgi</module>
<module>camel-example-fhir-spring-boot</module>
<module>camel-example-cdi-kubernetes</module>