-
@Target(TYPE) @Retention(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
を正しくバインドできます。- 導入されたバージョン:
- 1.6, JAXB 2.1
-
-
要素の詳細
-
value
Class[] value
-
-