クラス Jaxb2Marshaller
- 実装されているすべてのインターフェース:
- Aware、- BeanClassLoaderAware、- InitializingBean、- GenericMarshaller、- GenericUnmarshaller、- Marshaller、- MimeMarshaller、- MimeUnmarshaller、- Unmarshaller
GenericMarshaller インターフェースの実装。典型的な使用箇所は、この Bean に "contextPath" または "classesToBeBound" プロパティを設定し、プロパティ、スキーマ、アダプター、リスナーを設定してマーシャラーとアンマーシャラーをカスタマイズし、それを参照することです。
- 導入:
- 3.0
- 作成者:
- Arjen Poutsma, Juergen Hoeller, Rossen Stoyanchev, Sam Brannen
- 関連事項:
- setContextPath(java.lang.String)
- setClassesToBeBound(java.lang.Class<?>...)
- setJaxbContextProperties(java.util.Map<java.lang.String, ?>)
- setMarshallerProperties(java.util.Map<java.lang.String, ?>)
- setUnmarshallerProperties(java.util.Map<java.lang.String, ?>)
- setSchema(org.springframework.core.io.Resource)
- setSchemas(org.springframework.core.io.Resource...)
- setMarshallerListener(jakarta.xml.bind.Marshaller.Listener)
- setUnmarshallerListener(jakarta.xml.bind.Unmarshaller.Listener)
- setAdapters(jakarta.xml.bind.annotation.adapters.XmlAdapter<?, ?>...)
 
- フィールドのサマリーフィールド
- コンストラクターの概要コンストラクター
- メソッドのサマリー修飾子と型メソッド説明- void- protected XmlMappingException指定された- JAXBExceptionを- org.springframework.oxm階層からの適切な例外に変換します。新しく作成された JAXB マーシャラーを返します。新しく作成された JAXB アンマーシャラーを返します。- ClassSE<?>[]新しく作成された JAXBContext によって認識される Java クラスのリストを返します。JAXB コンテキストパスを返します。このマーシャラーが使用する JAXBContext を返し、必要に応じて遅延ビルドします。- StringSE[]JAXB2 アノテーションを検索するパッケージを返します。- protected void- initJaxbMarshaller- (MarshallerEE marshaller) カスタム初期化動作のために具体的な JAXB マーシャラーによってオーバーライドできるテンプレートメソッド。- protected void- initJaxbUnmarshaller- (UnmarshallerEE unmarshaller) カスタム初期化動作のために具体的な JAXB マーシャラーによってオーバーライドできるテンプレートメソッド。- booleanXML 外部エンティティが許可されているかどうかを返します。- booleanDTD 解析がサポートされているかどうかを返します。- void指定されたルートを持つオブジェクトグラフを指定された- ResultSE にマーシャリングします。- void- marshal- (ObjectSE graph, ResultSE result, MimeContainer mimeContainer) 指定されたルートを持つオブジェクトグラフを指定された- ResultSE にマーシャリングし、バイナリデータを- MimeContainerに書き込みます。- void- setAdapters- (XmlAdapterEE<?, - ?>... adapters) JAXB- Marshallerおよび- Unmarshallerに登録する- XmlAdapterを指定します。- void- setBeanClassLoader- (ClassLoaderSE classLoader) Bean- class loaderSE を Bean インスタンスに提供するコールバック。- void- setCheckForXmlRootElement- (boolean checkForXmlRootElement) - supports(Class)が- @XmlRootElementEE アノテーションをチェックするかどうかを指定します。- void- setClassesToBeBound- (ClassSE<?>... classesToBeBound) Java クラスのリストを、新しく作成された JAXBContext によって認識されるように設定します。- void- setContextPath- (StringSE contextPath) JAXB コンテキストパスを設定します。- void- setContextPaths- (StringSE... contextPaths) 複数の JAXB コンテキストパスを設定します。- void- setJaxbContextProperties- (MapSE<StringSE, - ?> jaxbContextProperties) - JAXBContextプロパティを設定します。- void- setLazyInit- (boolean lazyInit) このマーシャラーの- JAXBContextEE を遅延初期化するかどうかを設定します。- void- setMappedClass- (ClassSE<?> mappedClass) 部分的な非整列化のための JAXB マップクラスを指定します。- void- setMarshallerListener- (Marshaller.ListenerEE marshallerListener) JAXB- Marshallerに登録する- Marshaller.Listenerを指定します。- void- setMarshallerProperties- (MapSE<StringSE, - ?> properties) JAXB- Marshallerプロパティを設定します。- void- setMtomEnabled- (boolean mtomEnabled) MTOM サポートを有効にするかどうかを指定します。- void- setPackagesToScan- (StringSE... packagesToScan) クラスパスに JAXB2 アノテーションを含むクラスを検索するようにパッケージを設定します。- void- setProcessExternalEntities- (boolean processExternalEntities) 非整列化時に外部 XML エンティティが処理されるかどうかを示します。- void検証に使用するスキーマリソースを設定します。- void- setSchemaLanguage- (StringSE schemaLanguage) スキーマ言語を設定します。- void- setSchemaResourceResolver- (LSResourceResolverSE schemaResourceResolver) スキーマリソースのロードに使用されるリソースリゾルバーを設定します。- void- setSchemas- (Resource... schemaResources) 検証に使用するスキーマリソースを設定します。- void- setSupportDtd- (boolean supportDtd) DTD 解析をサポートする必要があるかどうかを示します。- void- setSupportJaxbElementClass- (boolean supportJaxbElementClass) - void- setUnmarshallerListener- (Unmarshaller.ListenerEE unmarshallerListener) - Unmarshaller.Listenerが JAXB- Unmarshallerに登録されるように設定します。- void- setUnmarshallerProperties- (MapSE<StringSE, - ?> properties) JAXB- Unmarshallerプロパティを設定します。- void- setValidationEventHandler- (ValidationEventHandlerEE validationEventHandler) JAXB 検証イベントハンドラーを設定します。- booleanこのマーシャラーが、指定された型のインスタンスをマーシャリングできるかどうかを示します。- booleanこのマーシャラーが、指定されたジェネリクス型のインスタンスをマーシャリングできるかどうかを示します。指定された- SourceSE をオブジェクトグラフに非整列化します。- unmarshal- (SourceSE source, MimeContainer mimeContainer) 指定された- SourceSE をオブジェクトグラフに非整列化し、- MimeContainerからバイナリ添付ファイルを読み取ります。- protected ObjectSE- unmarshalStaxSource- (UnmarshallerEE jaxbUnmarshaller, SourceSE staxSource) 
- フィールドの詳細- loggerサブクラスで利用可能なロガー。
 
- コンストラクターの詳細- Jaxb2Marshallerpublic Jaxb2Marshaller()
 
- メソッドの詳細- setContextPaths複数の JAXB コンテキストパスを設定します。コンテキストパスの指定された配列は、JAXB でサポートされているように、コロン区切りの文字列に変換されます。
- setContextPathJAXB コンテキストパスを設定します。- このプロパティを設定するには、 - "classesToBeBound"または- "packagesToScan"が必要です。
- getContextPathJAXB コンテキストパスを返します。
- setClassesToBeBoundJava クラスのリストを、新しく作成された JAXBContext によって認識されるように設定します。- このプロパティを設定するには、 - "contextPath"または- "packagesToScan"が必要です。
- getClassesToBeBound新しく作成された JAXBContext によって認識される Java クラスのリストを返します。
- setPackagesToScanクラスパスに JAXB2 アノテーションが付いたクラスを検索するようにパッケージを設定します。これは Spring ベースの検索を使用しているため、Spring のコンポーネントスキャン機能(- ClassPathBeanDefinitionScanner)に類似しています。- このプロパティを設定するには、 - "contextPath"または- "classesToBeBound"が必要です。
- getPackagesToScanJAXB2 アノテーションを検索するパッケージを返します。
- setJaxbContextProperties- JAXBContextプロパティを設定します。これらの実装固有のプロパティは、基になる- JAXBContextに設定されます。
- setMarshallerPropertiesJAXB- Marshallerプロパティを設定します。- これらのプロパティは、基礎となる JAXB - Marshallerで設定され、インデントなどの機能を可能にします。
- setUnmarshallerPropertiesJAXB- Unmarshallerプロパティを設定します。- これらのプロパティは、基礎となる JAXB - Unmarshallerに設定されます。- パラメーター:
- properties- プロパティ
- 関連事項:
 
- setMarshallerListenerJAXB- Marshallerに登録する- Marshaller.Listenerを指定します。
- setUnmarshallerListener- Unmarshaller.Listenerが JAXB- Unmarshallerに登録されるように設定します。
- setValidationEventHandlerJAXB 検証イベントハンドラーを設定します。このイベントハンドラーは、マーシャリング API の呼び出し中に検証エラーが発生した場合に JAXB によって呼び出されます。
- setAdaptersJAXB- Marshallerおよび- Unmarshallerに登録する- XmlAdapterを指定します。
- setSchema検証に使用するスキーマリソースを設定します。
- setSchemas検証に使用するスキーマリソースを設定します。
- setSchemaLanguageスキーマ言語を設定します。デフォルトは W3C XML スキーマ:- http://www.w3.org/2001/XMLSchema"です。
- setSchemaResourceResolverスキーマリソースのロードに使用されるリソースリゾルバーを設定します。
- setLazyInitpublic void setLazyInit- (boolean lazyInit) このマーシャラーの- JAXBContextEE を遅延初期化するかどうかを設定します。デフォルトは、起動時に初期化する- falseです。- trueに切り替えることができます。- 初期化は、 - afterPropertiesSet()が呼び出された場合にのみ適用されます。
- setMtomEnabledpublic void setMtomEnabled- (boolean mtomEnabled) MTOM サポートを有効にするかどうかを指定します。デフォルトは- falseです。XOP/ MTOM を使用したマーシャリングは有効になっていません。
- setSupportJaxbElementClasspublic void setSupportJaxbElementClass- (boolean supportJaxbElementClass) - supports(Class)が- JAXBElementEE クラスの- trueを返すかどうかを指定します。- デフォルトは - falseです。つまり、- supports(Class)は- JAXBElementクラスに対して常に- falseを返します(ただし、- supports(Type)は- JAXBElementの型パラメーターを取得できるため、- trueを返すことができます)。- ModelAndViewは実行時に型パラメーター情報を提供しないため、このプロパティは通常、- MarshallingViewなどのクラスの使用と組み合わせて有効になります。
- setCheckForXmlRootElementpublic void setCheckForXmlRootElement- (boolean checkForXmlRootElement) - supports(Class)が- @XmlRootElementEE アノテーションをチェックするかどうかを指定します。- デフォルトは - trueです。つまり、- supports(Class)はこのアノテーションをチェックします。ただし、一部の JAXB 実装(EclipseLink MOXy など)では、外部定義ファイルでバインディングを定義できるため、クラスアノテーションを自由に保つことができます。このプロパティを- falseに設定すると、これらの JAXB 実装がサポートされます。
- setMappedClass部分的な非整列化のための JAXB マップクラスを指定します。
- setSupportDtdpublic void setSupportDtd- (boolean supportDtd) DTD 解析をサポートする必要があるかどうかを示します。- デフォルトは - falseで、DTD が無効になっています。
- isSupportDtdpublic boolean isSupportDtd()DTD 解析がサポートされているかどうかを返します。
- setProcessExternalEntitiespublic void setProcessExternalEntities- (boolean processExternalEntities) 非整列化時に外部 XML エンティティが処理されるかどうかを示します。- デフォルトは - falseです。これは、外部エンティティが解決されないことを意味します。- unmarshal(Source)に渡される- Sourceが- SAXSourceSE または- StreamSourceSE である場合にのみ、外部エンティティの処理が有効または無効になることに注意してください。- DOMSourceSE または- StAXSourceSE インスタンスには影響しません。- 注意 : このオプションを - trueに設定すると、- setSupportDtd(boolean)が- trueに自動的に設定されます。
- isProcessExternalEntitiespublic boolean isProcessExternalEntities()XML 外部エンティティが許可されているかどうかを返します。
- setBeanClassLoaderインターフェースからコピーされた説明:- BeanClassLoaderAwareBean- class loaderSE を Bean インスタンスに提供するコールバック。- 通常の Bean プロパティの設定後、ただし - InitializingBean's- InitializingBean.afterPropertiesSet()メソッドやカスタム init-method などの初期化コールバックの前に呼び出されます。- 次で指定:
-  インターフェース BeanClassLoaderAwareのsetBeanClassLoader
- パラメーター:
- classLoader- 所有クラスローダー
 
- afterPropertiesSetインターフェースからコピーされた説明:- InitializingBeanすべての Bean プロパティを設定し、- BeanFactoryAware、- ApplicationContextAwareなどを満たした後、包含- BeanFactoryによって呼び出されます。- このメソッドにより、Bean インスタンスは、すべての Bean プロパティが設定されたときに、その全体的な構成の検証と最終的な初期化を実行できます。 - 次で指定:
-  インターフェース InitializingBeanのafterPropertiesSet
- 例外:
- ExceptionSE- 構成の誤り(必須プロパティの設定の失敗など)の場合、またはその他の理由で初期化が失敗した場合
 
- getJaxbContextこのマーシャラーが使用する JAXBContext を返し、必要に応じて遅延ビルドします。
- supportsインターフェースからコピーされた説明:- Marshallerこのマーシャラーが、指定された型のインスタンスをマーシャリングできるかどうかを示します。- 次で指定:
-  インターフェース Marshallerのsupports
- 次で指定:
-  インターフェース Unmarshallerのsupports
- パラメーター:
- clazz- このマーシャラーがマーシャリングできるかどうか尋ねられているクラス
- 戻り値:
-  このマーシャラーが実際に提供されたクラスのインスタンスをマーシャリングできる場合は true。それ以外の場合はfalse
 
- supportsインターフェースからコピーされた説明:- GenericMarshallerこのマーシャラーが、指定されたジェネリクス型のインスタンスをマーシャリングできるかどうかを示します。- 次で指定:
-  インターフェース GenericMarshallerのsupports
- 次で指定:
-  インターフェース GenericUnmarshallerのsupports
- パラメーター:
- genericType- このマーシャラーがマーシャリングできるかどうか尋ねられている型
- 戻り値:
-  このマーシャラーが実際に提供された型のインスタンスをマーシャリングできる場合は true。それ以外の場合はfalse
 
- marshalインターフェースからコピーされた説明:- Marshaller指定されたルートを持つオブジェクトグラフを指定された- ResultSE にマーシャリングします。- 次で指定:
-  インターフェース Marshallerのmarshal
- パラメーター:
- graph- マーシャリングするオブジェクトグラフのルート
- result- マーシャリングする結果
- 例外:
- XmlMappingException- 指定されたオブジェクトを結果に整列化できない場合
 
- marshalpublic void marshal- (ObjectSE graph, ResultSE result, @Nullable MimeContainer mimeContainer) throws XmlMappingException インターフェースからコピーされた説明:- MimeMarshaller指定されたルートを持つオブジェクトグラフを指定された- ResultSE にマーシャリングし、バイナリデータを- MimeContainerに書き込みます。- 次で指定:
-  インターフェース MimeMarshallerのmarshal
- パラメーター:
- graph- マーシャリングするオブジェクトグラフのルート
- result- マーシャリングする結果
- mimeContainer- 抽出されたバイナリコンテンツを書き込む MIME コンテナー
- 例外:
- XmlMappingException- 指定されたオブジェクトを結果に整列化できない場合
 
- createMarshaller新しく作成された JAXB マーシャラーを返します。- メモ: JAXB マーシャラーは必ずしもスレッドセーフではありません。このメソッドは 5.2 以降はパブリックです。 - 導入:
- 5.2
- 関連事項:
 
- initJaxbMarshallerカスタム初期化動作のために具体的な JAXB マーシャラーによってオーバーライドできるテンプレートメソッド。JAXB- Marshallerの作成後、およびそれぞれのプロパティが設定された後に呼び出されます。- デフォルトの実装では、 - defined properties、- validation event handler、- schemas、- listener、- adaptersを設定します。
- unmarshalインターフェースからコピーされた説明:- Unmarshaller指定された- SourceSE をオブジェクトグラフに非整列化します。- 次で指定:
-  インターフェース Unmarshallerのunmarshal
- パラメーター:
- source- マーシャリングのソース
- 戻り値:
- オブジェクトグラフ
- 例外:
- XmlMappingException- 指定されたソースをオブジェクトにマップできない場合
 
- unmarshalpublic ObjectSE unmarshal- (SourceSE source, @Nullable MimeContainer mimeContainer) throws XmlMappingException インターフェースからコピーされた説明:- MimeUnmarshaller指定された- SourceSE をオブジェクトグラフに非整列化し、- MimeContainerからバイナリ添付ファイルを読み取ります。- 次で指定:
-  インターフェース MimeUnmarshallerのunmarshal
- パラメーター:
- source- マーシャリングのソース
- mimeContainer- 抽出されたバイナリコンテンツを読み取る MIME コンテナー
- 戻り値:
- オブジェクトグラフ
- 例外:
- XmlMappingException- 指定されたソースをオブジェクトにマップできない場合
 
- createUnmarshaller新しく作成された JAXB アンマーシャラーを返します。- メモ: JAXB アンマーシャラーは必ずしもスレッドセーフではありません。このメソッドは 5.2 以降はパブリックです。 - 導入:
- 5.2
- 関連事項:
 
- unmarshalStaxSourceprotected ObjectSE unmarshalStaxSource- (UnmarshallerEE jaxbUnmarshaller, SourceSE staxSource) throws JAXBExceptionEE 
- initJaxbUnmarshallerカスタム初期化動作のために具体的な JAXB マーシャラーによってオーバーライドできるテンプレートメソッド。JAXB- Marshallerの作成後、およびそれぞれのプロパティが設定された後に呼び出されます。- デフォルトの実装では、 - defined properties、- validation event handler、- schemas、- listener、- adaptersを設定します。
- convertJaxbException指定された- JAXBExceptionを- org.springframework.oxm階層からの適切な例外に変換します。- パラメーター:
- ex- 発生した- JAXBException
- 戻り値:
-  対応する XmlMappingException