我正在调用数据库存储过程,该过程将输出作为XML返回。
DB输出
<ROWSET>
<ROW>
<EMPLOYEEID>1</EMPLOYEEID>
<EMPLOYEENAME>SEAN</EMPLOYEENAME>
<DEPT>ACOUNTING</DEPT>
</ROW>
<ROW>
<EMPLOYEEID>6</EMPLOYEEID>
<EMPLOYEENAME>KAREN</EMPLOYEENAME>
<DEPT>HR</DEPT>
</ROW>
</ROWSET>
我正在使用Jackson将XML String转换为java对象。我创建了一个支持的java类来将XML映射到java对象
@JacksonXmlRootElement(localName = "ROWSET")
public class RowSet {
@JacksonXmlProperty(localName = "ROW")
private Row [] row;
public RowSet() {
}
public Row [] getRow() {
return row;
}
public void setRow(Row [] row) {
this.row = row;
}
}
class Row {
@JacksonXmlProperty(localName = "EMPLOYEEID")
private String employeeId;
@JacksonXmlProperty(localName = "EMPLOYEENAME")
private String employeeName;
@JacksonXmlProperty(localName = "DEPT")
private String dept;
public String getEmployeeId() {
return employeeId;
}
public void setEmployeeId(String employeeId) {
this.employeeId = employeeId;
}
public String getEmployeeName() {
return employeeName;
}
public void setEmployeeName(String employeeName) {
this.employeeName = employeeName;
}
public String getDept() {
return dept;
}
public void setDept(String dept) {
this.dept = dept;
}
}
从字符串xml创建java对象的代码
public static void main(String ... args){
String ouputput= getEmployeeData();// DB call to get data as xml string
XmlMapper xmlMapper = new XmlMapper();
RowSet rowSet= xmlMapper.readValue(ouputput, RowSet.class);
System.out.println(rowSet.getRow().length);
}
我得到以下异常
无法构造字符串参数的实例,无法构造字符串参数构造函数/工厂方法从字符串值 (“1”) 反序列化
XML 中的行
数组应该有一个在 XML 文本中不存在的包装器(行集
除外)。告诉杰克逊不要寻找包装纸,例如
@JacksonXmlProperty(localName = "ROW")
@JacksonXmlElementWrapper(useWrapping = false)
private Row[] row;
问题内容: 使用包中的类时遇到了json解析问题,而我得到的错误是: 发生此问题的Web应用程序是使用AngularJS前端的Spring MVC应用程序,但我可以使用更小的所有Java程序来复制该问题。这是我的豆子: Shipment.java Activity.java ActivityLocation.java 地址.java 这是我可以正确映射json的代码: 调整var中的数据时,遇到了
我使用RestTemplate。exchange在我的Spring Boot应用程序中获得以下响应: 广告商。java: 广告商java: 但我有以下例外: 我不明白为什么id“1057343”不能反序列化。 你能帮忙吗?提前谢谢
我正在尝试使用RestTemplate(Spring Boot)读取来自rest服务的响应: 但当响应中存在错误数组时: 我不明白为什么没有构造器/工厂方法从字符串值反序列化。 谢谢
我是Spring DataJPA+REST项目的新手,我正在尝试使用OneToOne单向关系执行从reference EmployerType添加新的或编辑雇主。当我试图添加或编辑数据时,我会得到以下错误: 下面是关于这些课程的信息。 Rest控制器
当我在Spring Data REST应用程序中使用Lombok来定义复杂类型时,例如: 使用Spring Data REST控制器,例如: 我遇到了一个可怕的错误: 来自Spring Data REST使用Jackson和Book POST,例如: 当Jackson试图解析本地URI时,会发生反序列化错误,该URI应解析为单个唯一的人。如果我删除我的RepositoryRestControlle
我正在尝试反序列化以下JSON: 我已反序列化文件: 在以下对象结构中: 规则efinition.java 定义。爪哇 和JAVA 我得到了以下错误 我看到问题是因为'and-condition-1'只是一个值,我如何反序列化这些,我想知道我应该写一个自定义反序列化器(或者)有什么解决方法吗?