2 回答

TA贡献1820条经验 获得超2个赞
看起来您的模型中有许多类。检查这行代码并检查是否导入了正确的代码,因为异常显示 marshaller 期望 .NewDataSetPOJOJAXBContext.newInstance(NewDataSet.class)importTransactionalSubmissionsSvcs.NewDataSet
编辑前
您没有提到您使用的工具。如果是杰克逊,您可以解析有效负载,如下所示:XML
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
import java.io.File;
import java.nio.file.Files;
public class XmlMapperApp {
public static void main(String[] args) throws Exception {
String xml = "your xml";
parse(xml);
}
public static void parse(String xml) throws Exception {
XmlMapper xmlMapper = new XmlMapper();
xmlMapper.enable(SerializationFeature.INDENT_OUTPUT);
JsonNode root = xmlMapper.readTree(xml);
JsonNode result = root.at("/SendWithXMLResult");
JsonNode jsonNode = xmlMapper.readTree(result.asText());
JsonNode submissionResult = jsonNode.at("/SubmissionResult");
System.out.println(submissionResult.get("Status"));
System.out.println(submissionResult.get("ErrMsg"));
System.out.println(submissionResult.get("RefNo"));
}
}
如果已准备好模型,则可以使用方法直接反序列化到该模型。POJOXMLreadValue

TA贡献1873条经验 获得超9个赞
找到原因,通过删除namespace = "TransactionalSubmissionsSvcs"
@javax.xml.bind.annotation.XmlSchema(namespace = "TransactionalSubmissionsSvcs",elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package com.mailadapter;
成为
@javax.xml.bind.annotation.XmlSchema(elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package com.mailadapter;
添加回答
举报