解组意外元素(uri:,local:“message”)

0h4hbjxa  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(255)

我有个错误:
无法解组到[class….message]:意外元素(uri:,local:“message”)。UnmarshaleException:意外元素(uri:,local:“message”)。预期元素为<{http://www.defaultnamespace.com/order}顺序><{http://www.defaultnamespace.com/xmlmsg}命令><{http://www.defaultnamespace.com/xmlmsg}结果><{http://www.defaultnamespace.com/xmlmsg}信息>
这是message.class:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "command",
    "result"
})
@XmlRootElement(name = "MESSAGE")
@XmlSeeAlso({
    ORDER.class
})
public class MESSAGE {

    @XmlElement(name = "COMMAND")
    @ApiModelProperty
    protected COMMAND command;
    @XmlElement(name = "RESULT")
    @ApiModelProperty
    protected RESULT result;
}

这是command.class:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
    "any"
})
@XmlRootElement(name = "DATA")
public class COMMAND{

    @XmlAnyElement(lax = true)
    protected List<Object> any;
}

这是order.class:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {})
@XmlRootElement(name = "ORDER")
public class ORDER {

    @XmlAttribute(name = "BRAND_ID")
    protected String brandid;
    @XmlAttribute(name = "OID")
    protected String oid;
}

这是order-package-info.java:

@javax.xml.bind.annotation.XmlSchema(namespace = "www.defaultnamespace.com/order", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package ...order;

这是命令和结果-package-info.java:

@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.defaultnamespace.com/xmlmsg", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
package ....xmlmsg;

解组:

@PostMapping(path = "/someendpoint", consumes = { 
            MediaType.APPLICATION_XML
            }, produces = MediaType.TEXT_XML)
    public ResponseEntity<String> sendOrder(@RequestBody MESSAGE requestMessage) {
           return null;
}

请求如下:

<?xml version="1.0" encoding="ISO-8859-1"?>
<MESSAGE>
  <COMMAND>
      <DATA>
        <ORDER BRAND_ID="some" OID="some">
        </ORDER>
      </DATA>
  </COMMAND>
</MESSAGE>

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题