0

Enunciate を使用して、マルチモジュール Maven プロジェクト内の RestEasy サービスのドキュメントを生成しています。応答オブジェクト属性の説明を取得しようとすると、ドキュメントの生成に問題があります。

たとえば、私のサービスが次のように定義されているとします。

@GET
@Path("access/account")
@Produces({ MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML })
Account getAccount(@Context HttpServletRequest hsr, @Context UriInfo info) throws RestApiException;

ドキュメントが生成されるとき、属性の説明は生成されません。

name                type    description
idProfile           int     (no documentation provided)
idLanguage          int     (no documentation provided)
idRegion            int     (no documentation provided)
userType            string  (no documentation provided) 

すべての応答オブジェクトで、私は取得します (ドキュメントは提供されません)。1 つの重要な考え方は、すべての応答クラスがサービスとは異なる Maven モジュールにあるということです。応答クラスは UTIL モジュールにあります。サービスは EJB モジュールにあります。

問題の原因は間違いなくマルチモジュール Maven プロジェクトにあります。クラスが EJB モジュールにもある応答オブジェクトを定義すると、ドキュメントは完璧になります (説明も生成されます)。

理由と解決策は次のとおりです: https://github.com/stoicflame/enunciate/wiki/Multi-Module-Projects-%28Version-1%29

それにもかかわらず、私の問題を解決するために正確に何をすべきか、さまざまな pom (EJB および UTIL) 内に何を設定するべきかはまだわかりません。

どんな助けでも大歓迎です。

4

2 に答える 2

1

Multi-Module ProjectsAccountで説明されているように、クラスを「インポート」しようとしましたか?

<enunciate ...>
  <api-import pattern="com.mycompany.Account" />
  <api-import pattern="com.mycompany.*" />
  ...
</enunciate>
于 2013-08-08T18:28:07.033 に答える
0

問題が解決しました !!!

そうしなければならなかった:

  1. ライアンが言ったようにクラスをインポートします
  2. すべての応答オブジェクトが配置されている UTIL クラスの pom.xml に maven-source-plugin を追加します。
  3. 参照クラスにメソッドを取得するための説明を追加

結果は次のとおりです。

JSON
property    type    description
idProfile   int     Description B.
idLanguage  int     Description A.
idRegion    int     Description E.
userType    string  Description D.
于 2013-08-09T10:47:39.023 に答える