我必须在使用jaxb(JAXB 2.1.10-JDK 6)进行编组时动态传递根元素的名称空间。我将使用生成的xml来调用具有不同名称空间但输入XML相同的不同Web服务。
这是我的示例jaxb注释类.....用您的宝贵意见指导我。
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
"taskName",
"taskType"
})
@XmlRootElement(name = "TaskRequest", namespace = "ABC")
public class TaskRequest {
@XmlElement(name = "TaskName", required = true, namespace = "XYZ")
protected String taskName;
@XmlElement(name = "TaskType", required = true, namespace = "XYZ")
protected String taskType;
public String getTaskName() {
return taskName;
}
public void setTaskName(String value) {
this.taskName = value;
}
public String getTaskType() {
return taskType;
}
public void setTaskType(String value) {
this.taskType = value;
}
}
名称空间“ABC”需要动态传递不同的值。
最佳答案
您可以将根对象包装在JAXBElement
实例中,以提供备用名称和名称空间信息。