问题记录:
本例采用的swagger版本及相关组件
<!-- swagger2 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
<exclusions>
<exclusion>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
<version>1.6.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
<!-- swagger2 -->
问题出现原因:
加入了Shiro后就出现了乱码,可能是在加入Shiro的时候编码选择错了,网上介绍的办法大多是在setting设置以及对tomcat的设置,但是还是不得,在先不探讨Shiro倒置的情况下,找到了如下的解决办法
在config类中,继承自WebMvcConfigurationSupport类,重写以下方法:
@Override
public void configureMessageConverters(List> converters) {
super.configureMessageConverters(converters);
converters.add(responseBodyConverter());
}
@Bean
public HttpMessageConverter responseBodyConverter() {
return new StringHttpMessageConverter(Charset.forName("UTF-8"));
}
@Override
public void configureContentNegotiation(ContentNegotiationConfigurer configurer) {
configurer.favorPathExtension(false);
}
注意:不要直接在swagger配置类直接继承WebMvcConfigurationSupport,不然会出现
No mapping for GET /swagger-ui.html
的报错