Сваггер не работает

У меня возникли проблемы с отображением документов API Swagger с помощью Restlet. То, что показывает Swagger, это только эти вещи:

введите здесь описание изображения

И проверка API-документов показывает только это:

введите здесь описание изображения

Интересно, что не так с моим кодом:

public class MyApplication extends SwaggerApplication {
    private static final String ROOT_URI = "/";
    public Restlet createInboundRoot() {
        Router router = new Router(getContext());
        router.attach(ROOT_URI, RootServerResource.class);
        router.attach(ROOT_URI + "ping", PingServerResource.class);
        router.attach(ROOT_URI + "ping/", PingServerResource.class);
        // Some code omitted for simplicity
        return router;
    }
}

person quarks    schedule 21.02.2016    source источник


Ответы (3)



Решение состоит в том, чтобы добавить этот код:

    // Configuring Swagger 2 support
    Swagger2SpecificationRestlet swagger2SpecificationRestlet
            = new Swagger2SpecificationRestlet(this);
    swagger2SpecificationRestlet.setBasePath("http://localhost:8080/api-docs");
    swagger2SpecificationRestlet.attach(router);

И укажите интерфейс Swagger на /swagger.json

person quarks    schedule 23.02.2016

Swagger должен найти ваши операции API. Я не уверен насчет Restlet, в Джерси вы аннотируете свои классы ресурсов REST с помощью @Api и свои методы с помощью @ApiOperation. Подробнее читайте здесь в документации по swagger.

person Johannes Kienzle    schedule 21.02.2016
comment
Также вы можете перейти к соответствующему ресурсу с помощью /api-docs/resource - person Johannes Kienzle; 21.02.2016
comment
Вам это вообще помогло? Тогда отметьте ответ как правильный. - person Johannes Kienzle; 23.02.2016