2017-05-31 10 views
0

MVCで闊歩を統合し、闊歩し、Spring MVCの統合

@Configuration 
@EnableSwagger2 
@PropertySource("classpath:application.properties") 
public class SwaggerConfig extends WebMvcConfigurerAdapter { 
    . 
    . 
    @Override 
    public void addResourceHandlers(ResourceHandlerRegistry registry) { 
     registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/"); 
     registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); 
    } 
} 

のようなJavaベースの構成を使用して、URL http://localhost:8080/admin-api/admin/swagger-ui.htmlを使用する場合、それは私がSwaggerConfigコンフィギュレーションクラスからaddResourceHandlersを削除すると404に を与え、XMLを通じて設定などの

<mvc:resources mapping="swagger-ui.html" location="classpath:/META-INF/resources/" /> 
<mvc:resources mapping="/webjars/**" location="classpath:/META-INF/resources/webjars/" /> 

と同じURL http://localhost:8080/admin-api/admin/swagger-ui.htmlこれは問題なく動作します。どのように私はJavaベースの設定を使用することができますか?闊歩で

+0

スワーザーの@APIを与えることができる –

答えて

0

- Javaベースの構成 WebMvcConfigurerAdapterからクラスexteds、オーバーライドにより、そのクラスファイルに

@Configuration 
public class AppConfig extends WebMvcConfigurerAdapter { 
    @Override 
    public void addResourceHandlers(ResourceHandlerRegistry registry) { 
    registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/"); 
    registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); 
    super.addResourceHandlers(registry); 
    } 
} 
0

以下のようなaddResourceHandlers@EnableWebMvcであなたのSwaggerConfigにフラグを立てる試してみて、以下のように、別のResourceHandlerとして"**/**"を登録します:

@Override 
public void addResourceHandlers(ResourceHandlerRegistry registry) { 
    registry.addResourceHandler("**/**").addResourceLocations("classpath:/META-INF/resources/"); 
    registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); 
} 

また、Docketをご覧ください。ここにはsのリンクがありますDocket API-swagger-exampleを使用する十分なアプリケーションです。