0

春にswagger-springmvcを配線しましたが、いくつかのAPIパスの説明を提供するときに正しく機能しているようです。しかし、より複雑なオブジェクトにアクセスすると、不完全な xml が配信されます。これにより、クロムで次のメッセージが生成されます。

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が正しいようです。他の誰かがこの問題の期限を迎えていますか?

よく見ると、List Type オブジェクトを変換するときに問題が発生することがわかります。それでも私はそれについて何をすべきかについての解決策を持っていません。

4

1 に答える 1

1

swagger 0.6.5 が使用する Jackson の依存関係を変更することで、この問題を解決できました。変更は 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>

3 つの 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>
于 2013-10-31T10:59:51.840 に答える