swagger-springmvc插件格式错误的xml $ ref

时间:2013-10-30 14:14:38

标签: spring-mvc swagger

我已经在春天连接了swagger-springmvc,并且在提供一些api路径的描述时接缝正常工作。然而,当访问更复杂的对象时,它会提供错误的xml。这会在chrome中生成以下消息:

This page contains the following errors:

error on line 1 at column 3963: StartTag: invalid element name
Below is a rendering of the page up to the first error.

我注意到可以在xml中找到这样的标签

<entry>
  <key>questions</key>
  <value>
    <items>
      <$ref>Question</$ref>
      <required>false</required>
      <type>any</type>
      <uniqueItems>false</uniqueItems>
    </items>
    <name>questions</name>
    <required>false</required>
    <type>Set</type>
    <uniqueItems>false</uniqueItems>
  </value>
</entry>

我尝试删除保存xml信息并从ref条目中删除美元符号,这似乎使xml正确。是否有其他人已经解决了这个问题?

仔细观察会发现,在转换列表类型对象时会出现问题。我仍然无法解决该怎么做。

1 个答案:

答案 0 :(得分:1)

我能够通过改变摇摆0.6.5使用的杰克逊依赖来解决这个问题。这些更改是在pom.xml中进行的。

排除了我在依赖树

中找到的swagger的jackson依赖项
    <dependency>
      <groupId>com.mangofactory</groupId>
      <artifactId>swagger-springmvc</artifactId>
      <version>0.6.5</version>
      <exclusions>
        <exclusion>
          <groupId>com.fasterxml.jackson.jaxrs</groupId>
          <artifactId>jackson-jaxrs-json-provider</artifactId>
        </exclusion>
        <exclusion>
          <groupId>com.fasterxml.jackson.module</groupId>
          <artifactId>jackson-module-scala</artifactId>
        </exclusion>
        <exclusion>
          <groupId>com.fasterxml</groupId>
          <artifactId>classmate</artifactId>
        </exclusion>
      </exclusions>
    </dependency>

为三个jackson依赖项添加了新的依赖项

    <dependency>
      <groupId>com.fasterxml.jackson.jaxrs</groupId>
      <artifactId>jackson-jaxrs-json-provider</artifactId>
      <version>2.2.3</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml</groupId>
      <artifactId>classmate</artifactId>
      <version>1.0.0</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.module</groupId>
      <artifactId>jackson-module-scala_2.9.2</artifactId>
      <version>2.2.3</version>
    </dependency>