Я довольно долго пытался искать и не мог найти решение, поэтому разместил этот вопрос.
У меня есть веб-проект на Java, в котором мы программно генерируем API-интерфейсы REST (то есть БЕЗ аннотаций на Джерси, таких как @ Path / @ Get)и т. д.) на основе файлов (проприетарных xml), предоставляемых другим инструментом, который является своего рода стандартом в моей организации через Джерси (ResourceConfig, например, https://docs.huihoo.com/jersey/2.13/resource-builder.html), и нам необходимо создать соответствующие документы SWAGGER. Все учебные пособия, которые яобнаружено, что используется декларативный API, включая страницу, например. https://github.com/swagger-api/swagger-core/wiki/Swagger-Core-Jersey-2.X-Project-Setup-1.5
Я также изучил Swagger-Inflector, который использует файл swagger.yaml, но в моем случае нам нужно сгенерировать его во время выполнения без ручной работы.
Вот как (аналогичный пример) мы генерируем API REST:
final Resource.Builder resourceBuilder = Resource.builder();
resourceBuilder.path("helloworld");
final ResourceMethod.Builder methodBuilder = resourceBuilder.addMethod("GET");
methodBuilder.produces(MediaType.TEXT_PLAIN_TYPE)
.handledBy(new Inflector<ContainerRequestContext, String>() {
@Override
public String apply(ContainerRequestContext containerRequestContext) {
return "Hello World!";
}
});
final Resource resource = resourceBuilder.build();
registerResources(resource);
Возможно ли это? Можем ли мы генерировать документы Swagger для программно сгенерированных API REST?