T - 書き込み可能な型。public interface MessageBodyWriter<T>MessageBodyWriter 実装には、適切と見なされるメディア型を制限するために、Produces のアノテーションを付けることができます。MessageBodyWriter パイプラインは、null 以外のレスポンスエンティティがある場合にのみ呼び出されます。MessageBodyWriter 契約を実装するプロバイダーは、プログラムで JAX-RS ランタイムに登録するか、プロバイダーのスキャンフェーズ中に JAX-RS ランタイムによって自動的に検出されるように @Provider アノテーションを付ける必要があります。
| 修飾子と型 | メソッドと説明 |
|---|---|
default long | getSize(T t, ClassSE<?> type, TypeSE genericType, AnnotationSE[] annotations, MediaType mediaType) 元々、このメソッドは writeTo の前に呼び出され、シリアライズされた形式の t の長さ(バイト単位)を確認していました。 |
boolean | isWriteable(ClassSE<?> type, TypeSE genericType, AnnotationSE[] annotations, MediaType mediaType)MessageBodyWriter が特定の型をサポートしているかどうかを確認します。 |
void | writeTo(T t, ClassSE<?> type, TypeSE genericType, AnnotationSE[] annotations, MediaType mediaType, MultivaluedMap<StringSE, ObjectSE> httpHeaders, OutputStreamSE entityStream) 型を HTTP メッセージに書き込みます。 |
boolean isWriteable(ClassSE<?> type, TypeSE genericType, AnnotationSE[] annotations, MediaType mediaType)
type - 書き込まれるインスタンスのクラス。genericType - 書き込まれるインスタンスの型。リソースメソッドの戻り値の型を反映するか、返されたインスタンスのインスペクションを介して取得されます。GenericEntity は、実行時にこの情報を指定する方法を提供します。annotations - メッセージエンティティインスタンスに添付されたアノテーションの配列。mediaType - HTTP エンティティのメディア型。true、それ以外の場合は false。default long getSize(T t, ClassSE<?> type, TypeSE genericType, AnnotationSE[] annotations, MediaType mediaType)
writeTo の前に呼び出され、シリアライズされた形式の t の長さ(バイト単位)を確認していました。HTTP Content-Length ヘッダーで負でない戻り値が使用されています。JAX-RS 2.0 の時点で、メソッドは非推奨になり、メソッドによって返される値は JAX-RS ランタイムによって無視されます。すべての MessageBodyWriter 実装は、メソッドから -1 を返すことをお勧めします。実際の Content-Length ヘッダー値を計算する責任は、JAX-RS ランタイムに委譲されています。
t - 書き込むインスタンス type - 書き込まれるインスタンスのクラス。genericType - 書き込むインスタンスの型。GenericEntity は、実行時にこの情報を指定する方法を提供します。annotations - メッセージエンティティインスタンスに添付されたアノテーションの配列。mediaType - HTTP エンティティのメディア型。void writeTo(T t, ClassSE<?> type, TypeSE genericType, AnnotationSE[] annotations, MediaType mediaType, MultivaluedMap<StringSE,ObjectSE> httpHeaders, OutputStreamSE entityStream) throws IOExceptionSE, WebApplicationException
t - 書き込むインスタンス。type - 書き込まれるインスタンスのクラス。genericType - 書き込むインスタンスの型。GenericEntity は、実行時にこの情報を指定する方法を提供します。annotations - メッセージエンティティインスタンスに添付されたアノテーションの配列。mediaType - HTTP エンティティのメディア型。httpHeaders - HTTP メッセージヘッダーの変更可能なマップ。entityStream - HTTP エンティティの OutputStreamSE。実装は出力ストリームを閉じてはなりません。IOExceptionSE - IO エラーが発生した場合。WebApplicationException - 特定の HTTP エラーレスポンスを生成する必要がある場合。メッセージがコミットされる前にスローされた場合にのみ有効です。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.