JAXB는 XSD base64Binary 및 hexBinary에서 바이트 배열로 생성됩니다. base64Binary있는 xsd 요소가 있습니다. 이것은 엄격하며 변경할 수 없습니다. 그러나이 요소에서 우리는 hexBinary의 가치를가집니다 (조금 혼동 스러워요). 그리고 지금 그것이 문제가되는 곳. JAXB가 이러한 요소를 비 정렬 화하는 방법은 없지만 나에게 sutaible이 아닌 것은 있습니다. 그래서 내 요소에 hexBinary가있을 수 있다면 오른쪽 정렬을 해제해야합니다. 하지만 내 사건 요소에는 base64Binary 유형이 있고 JAXB는이 요소를 다른 요소에 대해 비표준 화합니다. JAXB가 이러한 요소를 처리하는 방법을 변경하고 이러한 요소가 hexBinary가 될 것이므로 처리하도록 지시하는 방법이 있습니까? 아마도 혼란스러운 질문이 있지만 도움이 필요합니다. 그래서 곧 방법으로xsd : base64Binary 비 정렬 화 문제
나는 요소 base64Binary 인이 있지만 이러한 hexBinary에 관한 스펙 수있는 바와 같이, 비 정렬 화하기 위해 JAXB에게 싶어
나는 새 (때문에) XmlAdapter를 만들 필요가 뭔가를 읽을 수 있지만 나는 내가 있기 때문에 그것을 사용한다 곳에 잘 모릅니다
JAXB 생성 단지 수업을업데이트 :이 문제입니다 발견
. 요소가 생성 된 클래스에 base64Binary 인을 때 그것은이
XmlElement(name="name") protected byte[] element
를 생성하지만이 경우 hexBinary에 관한 스펙으로는 내가 base64Binary 인
때 JAXB이 어댑터를 사용하는 말을하는 방법을 알아야 그래서 지금
XmlJavaTypeAdapter(HexBinaryAdapter.class) XmlElement(name="name") protected byte[] element
를 만들 보호 바이트 [] 엘리먼트
네,하지만 어떻게 생성 된 클래스에서 이것을 설정할 수 있습니까? – hudi
@hudi - XML 스키마에서 base64Binary를 가지고 있지만 해당 XML 요소가 hexBinary 데이터를 나타내는 것이 맞습니까? –
네가 맞다. – hudi