Excluant les champs dans JAXB

J'ai 2 classes:

@XmlRootElement
public class A {

    private Long id;
    private B b;

    //setters and getters
}

et

@XmlRootElement
public class B {

    private Long id;
    private String field1;
    private String field2;

    //setters and getters
}

Par défaut, si je transforme une instance de la classe A pour le XML, je vais avoir tous ses domaines (id) et référencés B champs de la classe (id, field1, field2) comme ceci:

<a>
    <id>2</id>
    <b>
        <id>5</id>
        <field1>test1</field1>
        <field2>test3</field2>
    </b>
</a>

Est possible de modifier ce champs de référencé classe B sont inclus dans le fichier XML de la A classe? E. g. Je veux dire que lorsque je transforme une instance de A classe, je veux juste id de la B classe (pas de field1 et field2 champs), donc je veux obtenir:

<a>
    <id>2</id>
    <b>
        <id>5</id>
    </b>
</a>

Je ne veux pas en permanence annoter le B classe (à l'aide @XMLTransient ou @XMLElement) pour y parvenir, comme il y a des cas où je veux exporter l'ensemble B classe, comme c'est (avec id, field1 et field2.)

Je ne veux pas d'exportation de tous ces champs lors de la B classe est référencé à partir de A.

Est-ce même possible avec JAX-B?