如何在子类上使用JAXB

如何在子类上使用JAXB

本文介绍了如何在子类上使用JAXB @XmlValue?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想要这样的XML:

<simple>Foo</simple>

我可以通过如下所示的JAXB类成功完成此操作:

I can do this successfully via a JAXB class that looks like this:

@XmlRootElement(name="simple")
class Simple {
    @XmlValue
    public String contents;
}

但是现在我需要让Simple类成为另一个类的子类所以:

But now I need to make the Simple class be a subclass of another class like so:

@XmlRootElement(name="simple")
class Simple extends OtherClass {
    @XmlValue
    public String contents;
}

失败并带有 @XmlValue不允许派生另一个类的类。我不能轻易地重构超类(因为我们在包装类上使用@XmlElementRef的方式)。有没有一种解决方法可以让我注释我的子类来生成那个简单的XML?

That fails with @XmlValue is not allowed on a class that derives another class. I can't easily refactor the superclass away (because of the way we're using @XmlElementRef on a wrapper class). Is there a workaround that will let me annotate my subclass to generate that simple XML?

推荐答案

注意:我是的主管,

  • http://blog.bdoughan.com/2011/05/specifying-eclipselink-moxy-as-your.html

这篇关于如何在子类上使用JAXB @XmlValue?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-22 21:09