1

我正在使用以下 Maven 依赖项和插件

 <dependency>
     <groupId>io.springfox</groupId>
     <artifactId>springfox-swagger2</artifactId>
  <version>2.0.3-SNAPSHOT</version>
 </dependency>

<dependency>
     <groupId>io.springfox</groupId>
     <artifactId>springfox-spring-web</artifactId>
     <version>2.0.3-SNAPSHOT</version>
 </dependency>

  <repository>
        <id>jcenter-snapshots</id>
        <name>jcenter</name>
        <!-- <url>https://jcenter.bintray.com/</url> -->
        <url>http://oss.jfrog.org/artifactory/oss-snapshot-local/</url>
  </repository>

在beans.xml下面是bean定义如下:

 <int:annotation-config/>
        <context:annotation-config/> 
        <bean id="swagger2Config" class="springfox.documentation.swagger2.configuration.Swagger2DocumentationConfiguration"/>
<bean id="springConfig" class="com.example.SpringConfig"/>

我参考了以下博客

我无法使用博客中提到的抢先体验版本,因为它无法下载。我已将版本更改为 2.0.3-SNAPSHOT,现在我看到 HttpMediaTypeNotAcceptableException 异常。我能够生成 WAR 文件,并且在日志中,当我尝试使用 http://localhost:8080/example/v2/api-docs访问它时,我能够看到使用 Swagger 正确创建的资源组,上面提到的异常被抛出。

请帮忙。

4

1 回答 1

0

首先,看起来依赖项在 Maven Central 上再次可用。自从我写了那个博客以来,这是一个进步。那里至少有 2.0.1 和 2.0.2 可用,因此如果您不想使用,则无需再使用 JCentral。

至于 HttpMediaTypeNotAcceptableException。在我的实验过程中,我没有看到导致写那个博客的原因,所以我不能给你一个明确的答案。

在阅读您的问题时,我确实在 SO 上注意到了一些相关问题:

带有 Jackson 2.2 的 Spring MVC:“HttpMediaTypeNotAcceptableException:找不到可接受的表示”

Spring mvc 抛出 org.springframework.web.HttpMediaTypeNotAcceptableException:找不到可接受的表示

这些表明可能缺少一些与 Jackson 2 相关的通用 Spring MVC 配置,或者 @ResponseBody 的翻译可能需要对特定方法进行一些调整。检查这些问题,看看哪个更适合您的情况。

于 2015-06-22T13:35:49.213 回答