Как добавить конфигурацию Swagger для api версии 2 (api / v2) в веб. xml - PullRequest
0 голосов
/ 06 августа 2020

Я работаю над управлением версиями api (api / v2) и могу заставить его работать, но теперь мне также нужно настроить конфигурацию swagger, чтобы просмотреть определения наших конечных точек как для v1, так и для v2. Можно ли добавить эту конфигурацию в один файл web. xml. мы используем реализацию Jersey для нашего rest api, а ниже - зависимость swagger, которую мы используем:

<!-- REST API documentation generator -->
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-jersey2-jaxrs</artifactId>
            <version>1.5.16</version>
        </dependency>

current web. xml файл для конфигурации swagger выглядит следующим образом:

<servlet> 
    <servlet-name>backend</servlet-name>
    <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>jersey.config.server.provider.packages</param-name>
            <param-value>io.swagger.jaxrs.listing, our project controller package</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
</servlet>
......
    <servlet>
            <servlet-name>Jersey2Config</servlet-name>
            <servlet-class>io.swagger.jersey.config.JerseyJaxrsConfig</servlet-class>
            <init-param>
                <param-name>api.version</param-name>
                <param-value>1.0.0</param-value>
            </init-param>
            <init-param>
                <param-name>swagger.api.title</param-name>
                <param-value>xxxBackend</param-value>
            </init-param>
            <init-param>
                <param-name>swagger.api.basepath</param-name>
                <param-value>https://dev.backend.xxx.yyy/api/v1</param-value>
            </init-param>        
    </servlet>



    <servlet-mapping>
        <servlet-name>backend</servlet-name>
        <url-pattern>/api/v1/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>backend_version2</servlet-name>
        <url-pattern>/api/v2/*</url-pattern>
    </servlet-mapping>

Теперь я добавил в сервлет тот же параметр init-param для версии v2, но он загружается. как заставить работать версии v1 и v2, и есть ли дополнительная конфигурация, которую мне нужно добавить, чтобы она работала?

Помощь приветствуется!

...