【发布时间】:2017-11-01 03:48:31
【问题描述】:
我已经实现了将 xml 数据发布到我的控制器,但是由于我使用的 XML 格式,我在尝试读取的数据方面遇到了一些问题。
我的控制器:
@RequestMapping(method = RequestMethod.POST, consumes = {MediaType.APPLICATION_XML_VALUE}, produces = {MediaType.APPLICATION_XML_VALUE} )
public ResponseEntity<?> SlaDetails(@RequestBody AgentSla[] task_sla) {
MessageDto messageDto = new MessageDto();
for (AgentSla next: task_sla){
System.out.println(next.getStage());
}
messageDto.setMsg("ok");
return ResponseEntity.status(HttpStatus.CREATED).body(messageDto);
}
我的实体:
@XmlRootElement(name="task_sla")
public class AgentSla {
private Long id;
private String stage;
private String timezone;
//getters and setters
XML 文档示例:
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<task_sla>
<stage>boo</stage>
<timezone display_value="IN">12345</timezone>
</task_sla>
<task_sla>
<stage>foo</stage>
<timezone display_value="SR">12345</timezone>
</task_sla>
</xml>
问题:我可以读取 XML“子”的任何值,即“<stage>boo</stage>”或/timezone>,我遇到的问题是“<timezone display_value="IN">12345</timezone>”。在这个孩子上,它只读取值“12345”,但我还需要“display_value="SR"”值。
是否可以读取该值或者......我应该放弃。
【问题讨论】:
标签: xml spring-mvc http-post