序列化的通用字段JAXB我們有一個類定義了一個對象ID(UID):使用XMLAdapter
公共最終類UUID實現Serializable,可比{ .... }
和另一類:
@XmlType(name = "ChangeFieldValueInstruction")
public static class ChangeFieldValueInstruction<T> extends Instruction
{
private T newVal;
public ChangeFieldValueInstruction()
{
super();
}
public ChangeFieldValueInstruction(String fieldPath, T newVal)
{
super(fieldPath);
setNewVal(newVal);
}
public T getNewVal()
{
return newVal;
}
public void setNewVal(T newVal)
{
this.newVal = newVal;
}
................
}
這個類(UpdateObjectRequest)通過Web服務傳遞(我們使用的彈簧)。
我有一個package-info文件,它爲UUID.class定義了一個適配器,但是當我們傳遞給newVal一個UID對象時,我們看到那個適配器沒有被調用,實際上調用了默認的UID構造函數。 我嘗試使用@XmlAnyElement註釋getNewVal()方法,並將@XmlJavaTypeAdapter添加到UID類(以及此處建議的人員),但仍然無效。也嘗試使用@XmlSeeAlso(UUID.class)註釋UpdateObjectRequest 順便說一句,在xsd我看到newVal被定義爲xs:anyType
所以有誰知道我該如何得到這個工作? 10X。
看一看這個http://blog.bdoughan.com/2012/12/jaxbs-xmlanyelementlaxtrue-explained。 html我認爲'@XmlAnyElement(lax = true)'完全符合你的要求。 – earcam