如何将枚举与JAXB一起使用



我想使用JAXB将XML文件解组为对象。但是,我希望XML文件中的某个字段被视为字符串枚举,因为它应该只是三个可能值中的一个。现在,我的对象类是这样的:

@XmlRootElement(name="webApp")
public class WebApp {
  @XmlEnum(String.class)
  public enum AppTypes {
    Typeone, Typetwo, Typethree
  }
  @XmlElement(name="AppType")
  Enum<AppTypes> appType;
}

我想要解组的XML文件如下所示:

<webApp>
  <AppType>Typeone</AppType>
</webApp>

当然,它不起作用,但堆栈跟踪长得离谱,而且毫无信息,所以除非你想要,否则我不会发布它。
你看到我做错了什么吗?

正如@dictionre所建议的,我应该将appType声明为AppTypes变量,而不是Enum。现在看来效果不错

最新更新