Spring Boot集成Camunda并开启api文档

Spring Boot集成Camunda并开启api文档

版本

<dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.7.18</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.camunda.bpm</groupId>
                <artifactId>camunda-bom</artifactId>
                <version>7.17.0</version>
                <scope>import</scope>
                <type>pom</type>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-openapi3-spring-boot-starter</artifactId>
            <version>4.4.0</version>
        </dependency>

        
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.camunda.bpm.springboot</groupId>
            <artifactId>camunda-bpm-spring-boot-starter-webapp</artifactId>
        </dependency>

        <dependency>
            <groupId>org.camunda.bpm.springboot</groupId>
            <artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
        </dependency>

        <dependency>
            <groupId>org.camunda.bpm</groupId>
            <artifactId>camunda-engine-plugin-spin</artifactId>
        </dependency>

        <dependency>
            <groupId>org.camunda.spin</groupId>
            <artifactId>camunda-spin-dataformat-all</artifactId>
        </dependency>

        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

        <dependency>
            <groupId>org.camunda.bpm</groupId>
            <artifactId>camunda-engine-rest-openapi</artifactId>
            <version>7.17.0</version>
        </dependency>

        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

    </dependencies>

camunda配置

camunda:
  bpm:
    admin-user:
      id: demo
      password: demo
      first-name: demo
      last-name: demo
    database:
      schema-update: true
    authorization:
      enabled: true
    webapp:
      index-redirect-enabled: true

开启api文档的方法

  • 添加对应版本的camunda openapi的版本。如:

            <dependency>
                <groupId>org.camunda.bpm</groupId>
                <artifactId>camunda-engine-rest-openapi</artifactId>
                <version>7.17.0</version>
            </dependency>
    

添加依赖后,会有一个openapi.json文件
在这里插入图片描述

需要把文件copy到项目的resources/statuc目录下,让其可以通过http://{host}:{port}/openapi.json可以访问

  • 在项目配置文件中配置swagge-ui

    # swagger ui 配置
    springdoc:
      swagger-ui:
        path: /swagger-ui.html
        tags-sorter: alpha
        operations-sorter: alpha
        urls:
          - url: /openapi.json # camunda中编写好的api的文档信息
            name: camunda
          - url: /v3/api-docs  # 咱们自己在项目中自定义的文档信息
            name: customize
      api-docs:
        path: /v3/api-docs
        enabled: true
    

启动项目,访问http://{host}:{port}/doc.html

在这里插入图片描述

注意

因为我项目中使用的是knife4j,但knife4j这样配置后,没办法指定前缀请求,camunda接口需要以/engine-rest为前缀,所以在使用camunda的api文档时,需要添加前缀

在这里插入图片描述

自己自定义的业务可能不是以/engine-rest,开头,这使用自定义的api文档 时需要去除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值