Java 如何鼓励JAXB读取XmlElement内容字符串?

Java 如何鼓励JAXB读取XmlElement内容字符串?,java,xml,jaxb,Java,Xml,Jaxb,当我试图解析如下消息时,我没有收到“通知”: <?xml version="1.0" encoding="UTF-8"?> <message messageType="SUBSCRIBER" messageName="ANNOUNCEMENT"> <announcement time="12:30"> Lunchtime! </announcement> <announcement time

当我试图解析如下消息时,我没有收到“通知”:

 <?xml version="1.0" encoding="UTF-8"?>
 <message messageType="SUBSCRIBER" messageName="ANNOUNCEMENT">
     <announcement time="12:30">
         Lunchtime!
     </announcement>
     <announcement time="32:00">
         Good night ...
     </announcement>
     <errorText>Phone number missing, subscriber: Dick</errorText>
 </message>
在中为XmlElement使用name参数似乎没有什么区别。提前向您致谢。

将注释用于邮件文本:

@XmlValue
public  String getMessageText(){
    return this.messageText;
}

此外,如OP中所述,如果
公告
类包含未映射到XML或未从XML映射的getter/setter对,并且没有
@XmlTransient
注释,则该类上需要
@XmlAccessorType(XmlAccessType.NONE)
。。我认为这不是复制品。每个问题都有一个不同的XML数据包。这是一个有效的方法。这个类应该是相同的,但它不是。我解析属性,而不是XmlValue。@BlaiseDougan同意OP的说法,这不是重复的。投票重新开放。是的,这是答案的一部分。在前面的问题中添加了更完整的解决方案:问题。这个问题很有趣。。。我注意到了。谢谢你的反馈。我会更新我的答案。
 @XmlRootElement(name = "announcement")
 public class Announcement 
 {

     private     String  messageText = "";
     private     String  time        = "12:00";

     XmlAttribute(name ="time")
     public  String  getTime(){
         return this.time;
     }
     public  void    setTime( String newMsg ){
         this.messageText = time;
     }

     @XmlElement(name="announcement")
     public  String  getMessageText(){
         return this.messageText;
     }
     public  void    setMessageText( String newMsg ){
         this.messageText = newMsg;
     }

     Announcement(){
     }
 }
@XmlValue
public  String getMessageText(){
    return this.messageText;
}