Spring Boot Support
Red Hat Fuse integrates with Spring Boot to provide a lightweight runtime for Camel-based applications leveraging a flat class path deployment paradigm. Spring Boot provides for bootstrap of the Fuse runtime environment, auto-configuration of Fuse components, auto-wiring of beans, and framework support for Camel components.
This document outlines the components of Spring Boot that are supported with Red Hat Fuse and defines the scope and terms of that support.
Using Spring Boot with Fuse
In order to run Fuse on Spring Boot, Fuse applications import the necessary Spring Boot starters into their pom.xml file along with the Spring Boot Maven plugin to package their application. Fuse tests and certifies with a specific set of Spring Boot dependencies - these dependencies along with required version information are provided in the Fuse Bill of Materials (BOM). Fuse applications leveraging Spring Boot must align to the Fuse BOM.
Supported Spring Boot Components
The following starters are supported for Fuse on Spring Boot:
| Name | Description |
|---|---|
spring-boot-starter |
Core starter for Spring Boot framework features including including auto-configuration. |
spring-boot-starter-actuator |
Management and monitoring hooks for the Spring Boot runtime. |
spring-boot-starter-jdbc |
Used by JDBC-based Fuse components (e.g. camel-sql) |
spring-boot-starter-jta-narayana |
Support for JTA transactions using the Narayana transaction manager. |
spring-boot-starter-logging |
Core logback framework integration with Spring Boot logging. |
spring-boot-starter-security |
Integration with Spring Security. |
spring-boot-starter-tomcat |
Starter used to enable Tomcat as the web container for Spring Boot. |
spring-boot-starter-undertow |
Starter used to enable Undertow as the web container for Spring Boot. Undertow is the recommended container for Fuse applications. |
spring-boot-starter-web |
Used internally by Fuse-based applications for web container integration. General-purpose use of Web MVC with Fuse is not supported. |
spring-boot-starter-data-jpa |
Used with camel-jpa. |
spring-boot-starter-test |
Required dependency for some quickstarts. |
In addition to Spring Boot starters, the following Spring Boot dependencies are also supported:
| Name | Description |
|---|---|
spring-boot-configuration-processor |
Generates configuration metadata based on annotations. |
spring-boot-maven-plugin |
Used to package all code and configuration into a single, flat class path jar file. |
Spring Boot Support Policy
Fuse is tested and certified to work with the starters and dependencies referenced above. Red Hat supports their use with Camel-based applications in Fuse. All fixes related to Spring Boot occur in the upstream Spring Boot community. Red Hat provides commercially reasonable support for upstream Spring Boot dependencies, however, we may not be able to provide or influence timely patches.
Starters available in the Spring Boot community not listed here can be used by customers, but Red Hat does not test or certify their use with Fuse applications. Red Hat will not provide direct support for components other than those listed in the table.
