我有一个具有以下格式的 XML(一个简化的示例)
<Service id = "1">
<Message>
<options id="standard">
<option name="autorendered">
<value> 1</value>
</option>
<option name="environment">
<value> V</value>
</option>
<option name="document_name">
<value> Mail - MY Test Mail2.pdf</value>
</option>
<option name="document_provider">
<value> LNotes</value>
</option>
</options>
</Message>
</Service>
<Service id = "2">
<Message>
<options id="standard">
<option name="autorendered">
<value> 4</value>
</option>
<option name="environment">
<value> V</value>
</option>
<option name="document_name">
<value> attachment1.jpg</value>
</option>
<option name="document_provider">
<value> LNotes</value>
</option>
</options>
</Message>
</Service>
现在,当我使用 JAXB 并创建映射类时,它可以正常工作。但是我需要 Message 标记的值,无论它们之间是什么字符串,但如果我这样做,它会返回空值。但是如果我有一个像 hello 和 use 这样的标签service.getMessage()
,它会正确地返回我hello
。
<options>.....</option>
我希望 service.getMessage作为字符串返回。
如果在 JAX-B 中不可能,请建议我使用其他方法,例如 Jaxpath、Xpath、Stax 或其他一些标准公认的方法。
我的服务类看起来像这样 -
public class Service {
private Request request;
@XmlElement(name = "Request")
public Request getRequest() {
return request;
}
public void setRequest(Request edmsRequest) {
this.request = request;
}
}