2012-02-24 50 views
1

我试图马歇尔被延伸使用的EclipseLink MOXY抽象类的类:莫西+继承+包名称作为XML的根元素

public abstract class AbstractExample { 
    private String fieldA; 
    private String fieldB; 

    // Getters, setters 
} 

public class Example extends AbstractExample { 
    private String fieldC; 
    private String fieldD; 

    // More fields, getters and setters 
} 

我使用XML映射:

<java-type name="com.example.Example"> 
    <xml-root-element name="com.another.package.Example2" /> 
    <java-attributes> 
    <!-- All fields defined here --> 
    </java-attributes> 
</java-type> 

现在一切都很好,当反编组。当我编组对象时出现问题。相反

<com.another.package.Example2> 

根元素的我只

<Example2> 

得到的根元素。有趣的 - 只要我把从抽象类中的字段分解成实例,并删除扩展AbstractExample关键字,根源是它应该是什么

<com.another.package.Example2>. 

难道我做错了什么?我真的需要扩展抽象类,否则我的代码会有很多冗余。

+0

只是为了澄清:我不想XML的根元素是实例的限定名。我需要它是完全不同的包和类名称。 – 2012-02-24 10:31:59

回答