You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Quarkus中实现Apache Camel路由与Swagger UI的集成

Quarkus 集成 Apache Camel 路由与 Swagger UI 实现方案

前置要求

你已经完成Quarkus + Swagger UI的基础配置,无需调整现有结构,只需新增Camel相关配置即可实现集成。

1. 引入必要扩展

Maven项目在pom.xml中添加以下两个依赖即可:

  • org.apache.camel.quarkus:camel-quarkus-rest:提供Camel REST路由基础支持
  • org.apache.camel.quarkus:camel-quarkus-openapi-java:负责自动将Camel REST路由转换为符合规范的OpenAPI定义

2. 编写带OpenAPI元信息的Camel路由

在你的Camel RouteBuilder实现类中,为REST路由添加接口描述、参数、响应码等元信息,示例如下:

import org.apache.camel.builder.RouteBuilder;
import jakarta.enterprise.context.ApplicationScoped;

@ApplicationScoped
public class CamelRestRoute extends RouteBuilder {
    @Override
    public void configure() throws Exception {
        // 配置REST基础路径与OpenAPI元信息
        restConfiguration()
            .contextPath("/camel")
            .apiContextPath("/openapi")
            .apiProperty("api.title", "Camel 业务接口")
            .apiProperty("api.version", "v1");

        // 定义REST接口
        rest("/order")
            .produces("application/json")
            // GET查询订单接口
            .get("/{orderId}")
            .description("根据订单ID查询订单详情")
            .param().name("orderId").type(path).description("订单唯一ID").dataType("string").endParam()
            .responseMessage().code(200).message("查询成功").endResponseMessage()
            .to("direct:queryOrder");

        // 业务逻辑路由
        from("direct:queryOrder")
            .setBody(simple("{\"orderId\":\"${header.orderId}\", \"amount\":100, \"status\":\"paid\"}"));
    }
}

3. 调整Swagger UI配置

在application.properties中添加以下配置,让Swagger UI自动加载Camel生成的OpenAPI文档:

# 开启Camel OpenAPI与Quarkus全局OpenAPI的合并
quarkus.camel.openapi.include-quarkus-openapi=true
# 可选配置:如果不需要合并,可配置Swagger UI同时展示两份文档
# quarkus.swagger-ui.urls = /openapi, /camel/openapi

4. 功能验证

启动Quarkus应用后,访问默认的Swagger UI地址/q/swagger-ui,即可看到Camel路由对应的接口已经出现在文档列表中,支持直接在页面上进行接口调试。

注意:如果配置了全局OpenAPI合并,所有Camel REST接口的定义会自动合并到Quarkus默认的/openapi规范中,无需单独维护多份文档。

内容的提问来源于stack exchange,提问作者Ehtisham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 02:18:04