enunciateを使用して、JerseyベースのRESTAPIのドキュメントを再生成しようとしています。いくつかのつまずきを打つ:
@GET
@Produces(MediaType.APPLICATION_JSON)
public Iterable<Project> listAll() {
...
}
EnunciateはIterableを補間できないようです。私のドキュメントでは、「element :( custom)」を取得しています。プロジェクトタイプには@XmlRootElementと@JsonRootTypeの注釈が付けられていることに注意してください。
同様に、このコードの場合:
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response save(final T persistable) {
...
}
メソッドパラメーター(注:Tにはextends制限があります)とリターンタイプ(Responseはjavax.ws.rs.core.Response)の両方に対して「element:(custom)」を取得します。さらに、enunciateはリターンのメディアタイプを理解できないようです:XML、JSON、および*がリストされています(考えてみると、そこに何が欲しいのか正確にはわかりませんが、そうではないことはわかっています。)
何か案は?