|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 必須 | オプション | 詳細: 要素 | |||||||||
@Target(value=TYPE) @Retention(value=RUNTIME) public @interface XmlSeeAlso
このクラスをバインドするときにほかのクラスもバインドするように JAXB に指示します。
Java では、指定されたクラスのサブクラスをすべてリスト表示することは現実的ではなく不可能です。JAXB でも JAXBContext で認識される必要のあるクラスを自動的にリスト表示できないなど、これが JAXB ユーザーの支障となる場合がよくあります。
たとえば、次のクラス定義がある場合
class Animal {}
class Dog extends Animal {}
class Cat extends Animal {}
ユーザーは JAXBContext を JAXBContext.newInstance(Dog.class,Cat.class) のように作成する必要があります (Animal は Dog や Cat から参照されるため、自動的に取得される)。
XmlSeeAlso 注釈を使用すると、次のように記述できます。
@XmlSeeAlso({Dog.class,Cat.class})
class Animal {}
class Dog extends Animal {}
class Cat extends Animal {}
これにより、JAXBContext.newInstance(Animal.class) を実行できるようになります。この注釈の助けを借りて、JAXB 実装では Dog と Cat を正しくバインドできます。
| 必須要素の概要 | |
|---|---|
Class[] |
value
|
| 要素の詳細 |
|---|
public abstract Class[] value
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 必須 | オプション | 詳細: 要素 | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。