public class MarshallingHttpMessageConverter extends AbstractXmlHttpMessageConverter<java.lang.Object>
Marshaller および Unmarshaller 抽象化を使用して XML を読み書きできる HttpMessageConverter の実装。 このコンバーターを使用するには、Marshaller および Unmarshaller が必要です。これらは、コンストラクターまたは Bean プロパティによって注入できます。
デフォルトでは、このコンバーターは text/xml および application/xml をサポートしています。これは、supportedMediaTypes プロパティを設定することでオーバーライドできます。
logger| コンストラクターと説明 |
|---|
MarshallingHttpMessageConverter() |
MarshallingHttpMessageConverter(Marshaller marshaller) 指定された Marshaller セットで新しい MarshallingMessageConverter を構築します。 |
MarshallingHttpMessageConverter(Marshaller marshaller, Unmarshaller unmarshaller) 指定された Marshaller および Unmarshaller を使用して新しい MarshallingMessageConverter を構築します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
boolean | canRead(java.lang.Class<?> clazz, MediaType mediaType) この実装は、指定されたクラスがサポートされているかどうか、およびサポートされているメディア型 に指定されたメディア型が 含まれているかどうかをチェックします。 |
boolean | canWrite(java.lang.Class<?> clazz, MediaType mediaType) |
protected java.lang.Object | readFromSource(java.lang.Class<?> clazz, HttpHeaders headers, javax.xml.transform.Source source)AbstractHttpMessageConverter.read(Class, HttpInputMessage) から呼び出される抽象テンプレートメソッド。 |
void | setMarshaller(Marshaller marshaller) このメッセージコンバーターで使用する Marshaller を設定します。 |
void | setUnmarshaller(Unmarshaller unmarshaller) このメッセージコンバーターで使用する Unmarshaller を設定します。 |
protected boolean | supports(java.lang.Class<?> clazz) 指定されたクラスがこのコンバーターでサポートされているかどうかを示します。 |
protected void | writeToResult(java.lang.Object o, HttpHeaders headers, javax.xml.transform.Result result)AbstractXmlHttpMessageConverter.writeInternal(Object, HttpOutputMessage) から呼び出される抽象テンプレートメソッド。 |
readInternal, transform, writeInternaladdDefaultHeaders, canRead, canWrite, getContentLength, getDefaultCharset, getDefaultContentType, getSupportedMediaTypes, read, setDefaultCharset, setSupportedMediaTypes, writepublic MarshallingHttpMessageConverter()
Marshaller または Unmarshaller が設定されていない新しい MarshallingHttpMessageConverter を構築します。マーシャラーとアンマーシャラーは、構築後に setMarshaller(Marshaller) および setUnmarshaller(Unmarshaller) を呼び出して設定する必要があります。public MarshallingHttpMessageConverter(Marshaller marshaller)
Marshaller セットで新しい MarshallingMessageConverter を構築します。 指定された Marshaller が Unmarshaller インターフェースも実装している場合、マーシャリングとアンマーシャリングの両方に使用されます。そうでない場合、例外がスローされます。
Spring のすべての Marshaller 実装も Unmarshaller インターフェースを実装するため、このコンストラクターを安全に使用できることに注意してください。
marshaller - マーシャラーおよびアンマーシャラーとして使用されるオブジェクト public MarshallingHttpMessageConverter(Marshaller marshaller, Unmarshaller unmarshaller)
Marshaller および Unmarshaller を使用して新しい MarshallingMessageConverter を構築します。marshaller - 使用するマーシャラー unmarshaller - 使用するアンマーシャラー public void setMarshaller(Marshaller marshaller)
Marshaller を設定します。public void setUnmarshaller(Unmarshaller unmarshaller)
Unmarshaller を設定します。public boolean canRead(java.lang.Class<?> clazz,
@Nullable
MediaType mediaType)AbstractHttpMessageConverterHttpMessageConverter<java.lang.Object> 内の canRead AbstractHttpMessageConverter<java.lang.Object> の canRead clazz - 読み込み可能性をテストするクラス mediaType - 読み取るメディア型(指定しない場合は null にできます); 通常、Content-Type ヘッダーの値。true。それ以外の場合は false public boolean canWrite(java.lang.Class<?> clazz,
@Nullable
MediaType mediaType)AbstractHttpMessageConverterHttpMessageConverter<java.lang.Object> 内の canWrite AbstractHttpMessageConverter<java.lang.Object> の canWrite clazz - 書き込み可能性をテストするクラス mediaType - 書き込むメディア型(指定しない場合は null にすることができます); 通常、Accept ヘッダーの値。true。それ以外の場合は false protected boolean supports(java.lang.Class<?> clazz)
AbstractHttpMessageConverterAbstractHttpMessageConverter<java.lang.Object> の supports clazz - サポートをテストするクラス true。それ以外の場合は false protected java.lang.Object readFromSource(java.lang.Class<?> clazz,
HttpHeaders headers,
javax.xml.transform.Source source)
throws java.lang.ExceptionAbstractXmlHttpMessageConverterAbstractHttpMessageConverter.read(Class, HttpInputMessage) から呼び出される抽象テンプレートメソッド。AbstractXmlHttpMessageConverter<java.lang.Object> の readFromSource clazz - 返すオブジェクトの型 headers - HTTP 入力ヘッダー source - HTTP 入力本体 java.lang.Exception - I/O または変換エラーの場合 protected void writeToResult(java.lang.Object o,
HttpHeaders headers,
javax.xml.transform.Result result)
throws java.lang.ExceptionAbstractXmlHttpMessageConverterAbstractXmlHttpMessageConverter.writeInternal(Object, HttpOutputMessage) から呼び出される抽象テンプレートメソッド。AbstractXmlHttpMessageConverter<java.lang.Object> の writeToResult o - 出力メッセージに書き込むオブジェクト headers - HTTP 出力ヘッダー result - HTTP 出力本文 java.lang.Exception - I/O または変換エラーの場合