2013-05-24 3 views
2

Есть два JavaBean А и Б. и 2 Строку С и D. Там структураJAXB без маршала родительского элемента

A 
--B 
----C 
----D 

может маршал Объект А Xml

<A> 
    <B> 
    <C>ccc</C> 
    <D>ddd</D> 
    </B> 
</A> 

И В в некоторых случаях, я хотел бы marshall A для XML как это

<A> 
    <C>ccc</C> 
    <D>ddd</D> 
</A> 

Без тега B. может быть сделано с помощью XMLAdapter или другими способами. Это лучшее, если у него есть некоторые динамические способы. Спасибо.

ответ

0

Примечание: Я - лидер EclipseLink JAXB (MOXy) и входит в группу экспертов JAXB (JSR-222).

Вы можете использовать @XmlPath расширение Moxy в этом прецеденте:

import javax.xml.bind.annotation.*; 
import org.eclipse.persistence.oxm.annotations.XmlPath; 

@XmlRootElement(name = "A") 
@XmlAccessorType(XmlAccessType.FIELD) 
public class A { 

    @XmlPath(".") 
    private B b; 

} 

Для получения более подробной информации

+1

Спасибо, это какие-то способы т шляпа JAXB (JSR-222) поддерживает? – user2211527