次のような 2 つのエンドポイントがあるとします。
@GET
@Path("/blah")
@Produces(MIME_TYPE_1)
public Thing getThing() {
....
}
@GET
@Path("/blah")
@Produces(MIME_TYPE_2)
public OtherThing getOtherThing() {
....
}
Accept
これは、クライアントが送信するヘッダーに基づいて呼び出されるメソッドを調停するのに非常にうまく機能します。
私が抱えている問題は、クライアントがAccept
ヘッダーを完全に見逃した場合、(何らかの理由で) 2 番目のメソッドが呼び出され、それを最初のメソッドにしたいということです。
さらに複雑な点があります。これは、Swagger ドキュメントに自動的にフィードされるということです。余分な MIME タイプをドキュメントに表示したくないので、(たとえば)*/*
最初に受け入れられたタイプに追加したくありません。方法。
(これは Dropwizard と Jersey 1.x を使用していますが、Jersey 2.x に基づいた解決策を聞くことにまだ興味があります。間もなくアップグレードされる可能性があります。)