Swagger + jaxrs + встроенный причал + нет web.xml - PullRequest
0 голосов
/ 02 мая 2018

У меня есть проект Maven со встроенным сервером Jetty. Я уже создал API, используя JAX-RS, которые работают должным образом. Теперь я хочу создать документацию по swagger для моего API.

Чтобы начать с чванства, я добавил конфигурацию сервлета, как описано ниже:

@WebServlet(name = "SwaggerConfig")
public class SwaggerServlet extends HttpServlet {
    @Override
    public void init(ServletConfig config) throws ServletException {
        super.init(config);
        System.out.println("init SwaggerServlet");
        BeanConfig beanConfig = new BeanConfig();
        beanConfig.setVersion("1.0.0");
        beanConfig.setSchemes(new String[]{"http"});
        beanConfig.setHost("localhost:8082");
        beanConfig.setBasePath("/api");
        beanConfig.setResourcePackage("com.myCompany.myApisResourcePackage");
        beanConfig.setScan(true);
    }
}

Также в основном методе наряду с моей конфигурацией трикотажа я добавил следующий код:

//swagger
ServletHolder swaggerServletHolder = new ServletHolder(SwaggerServlet.class);
swaggerServletHolder.setInitOrder(1);
swaggerServletHolder.setInitParameter("swagger.api.basepath", "http://localhost:8082");
context.addServlet(swaggerServletHolder, "/api/*");
//swagger end

Итак, проблема в том, что я не могу найти, где будет создан файл swagger.json.

В этом случае swagger сканирует пакеты так, как сообщает журнал сервера, но swagger.json по-прежнему не создается.

Примечание. В настоящее время я не добавляю swagger-ui, так как считаю, что создание swagger.json необязательно

1 Ответ

0 голосов
/ 10 июня 2018

Я получил swagger json, нажав URL "localhost: 8082 / swagger.json". Я использовал ту же конфигурацию, что и в моем вопросе.

...