我使用JAXB来创建XML消息.我需要创建的XML(为了简单起见):
<request>
<header/>
</request>
Run Code Online (Sandbox Code Playgroud)
我的代码看起来像这样:
import javax.xml.bind.annotation.*;
@XmlRootElement(name = "request")
public class Request {
private String header;
@XmlElement(required=true)
public String getHeader() {
return header;
}
public void setHeader(String header) {
this.header=header;
}
}
Run Code Online (Sandbox Code Playgroud)
问题:header元素未显示(标题为null).当标头设置为空字符串时,将显示以下内容:
<request>
<header></header>
</request>
Run Code Online (Sandbox Code Playgroud)
当我用作类型Object代替时String,结果更糟:
<request>
<header xsi:type="xs:string"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"></header>
</request>
Run Code Online (Sandbox Code Playgroud)
BTW:我正在使用此代码来创建XML字符串.
是否有可能得到一个空标签?