Невозможно перечислить cxf список нескольких оконечных точек, используя swagger - PullRequest
0 голосов
/ 12 февраля 2019
  @Bean
  public Server rsServer2() {
                    JAXRSServerFactoryBean endpoint = new JAXRSServerFactoryBean();
                    endpoint.setProvider(new JacksonJsonProvider());
                    endpoint.setBus(cxf());
                    endpoint.setAddress("/rservice2");
                    endpoint.setServiceBeans(Arrays.<Object>asList(someService3));
                    endpoint.setFeatures(Arrays.asList(swagger2Feature2()));
                    return endpoint.create();
                }

                @Bean
                public Server rsServer() {
                    JAXRSServerFactoryBean endpoint = new JAXRSServerFactoryBean();
                    endpoint.setProvider(new JacksonJsonProvider());
                    endpoint.setBus(cxf());
                    endpoint.setAddress("/rservice");
                    endpoint.setServiceBeans(Arrays.<Object>asList(someService2));
                    endpoint.setFeatures(Arrays.asList(swagger2Feature()));
                    return endpoint.create();
                }


    @Bean("swagger2Feature")
    Swagger2Feature swagger2Feature() {
        System.out.println("Swagger2Feature Called");
        Swagger2Feature swagger2Feature = new Swagger2Feature();
        swagger2Feature.setResourcePackage("com.service2");
        swagger2Feature.setPrettyPrint(true);

        return swagger2Feature;
    }

    @Bean("swagger2Feature2")
    Swagger2Feature swagger2Feature2() {
        System.out.println("Swagger2Feature2 Called");
        Swagger2Feature swagger2Feature2 = new Swagger2Feature();

        swagger2Feature2.setResourcePackage("com.service3");
        swagger2Feature2.setPrettyPrint(true);
        return swagger2Feature2;
    }

   // 

При нажатии / basepath / rservice / services в браузере.Получение ниже api в списке.

  • / basepath / rservice2 / api-docs? Url = / basepath / rservice2 / swagger.json

  • / basepath / rservice/api-docs?url=/basepath/rservice2/swagger.json

Обе ссылки предоставляют сервисы, перечисленные только в swagger2Feature.setResourcePackage ("com.service2").

Желаемый результат: обе ссылки должны предоставить свои отдельные API-интерфейсы, перечисленные в соответствующих swagger2Feature.setResourcePackage.

...