Я использую swagger для документирования конечных точек API-интерфейса resteasy, и я обслуживаю описание swagger.json
с помощью сервлета с таким способом:
public void init(ServletConfig config) throws ServletException
{
super.init(config);
BeanConfig beanConfig = new BeanConfig();
beanConfig.setHost("localhost:8080");
beanConfig.setBasePath("/api");
beanConfig.setResourcePackage("my.rest.resources");
beanConfig.setScan(true);
}
и я могу получить доступ к swagger.json
в localhost:8080/api/swagger.json
.
Тем не менее, мои соавторы хотели бы избежать дополнительных сервлетов, кроме сервлета resteasy, и мне интересно, могу ли я служить созданным jag из swagger из метода из класса ресурсов, примерно так:
@GET
@Path("/myswagger")
@Produces("application/json")
public String myswagger(@Context UriInfo uriInfo)
{
Swagger swagger = new Swagger();
// Do something to retrieve the Swagger Json as a string
// ...
return(swaggerJsonString);
}
а затем получить доступ к java с помощью swagger через localhost:8080/api/myswagger
. Это возможно?