2012-08-23 2 views
2

JAXB를 사용하여 OpenOffice XML을 생성 중이므로 t 요소에 xml:space="preserve" 속성을 적용해야합니다. 스키마에없는 속성으로 XML 생성

<r> 
     <t> 
      foo 
     </t> 
    </r> 

내가 오픈 오피스 스키마에서 Java 클래스를 생성하기 위해 JAXB를 사용했습니다

<r> 
     <t xml:space="preserve"> 
      foo 
     </t> 
    </r> 

이어야한다. <t> 유형은 CTRElt Java 클래스에서 String으로 표시되므로이 속성을 설정할 방법이 없습니다. 기존 문서와 마샬에서 언 마샬 할 때 이전에 기존의 space 속성이 존재하지 않습니다.

<xsd:element name="t" type="ST_Xstring" minOccurs="1" maxOccurs="1"> <xsd:annotation> <xsd:documentation>Text</xsd:documentation> </xsd:annotation> </xsd:element>

<xsd:simpleType name="ST_Xstring"> <xsd:annotation> <xsd:documentation>Escaped String</xsd:documentation> </xsd:annotation> <xsd:restriction base="xsd:string" /> </xsd:simpleType>

어떻게이 space 속성을 요구하고있다 XML을 생성 할 수 있습니다 : 다음과 같이

스키마의 관련 부분은 무엇입니까? 스키마 수정은 옵션이 아닙니다. JAXB를 사용자 정의해야합니까?

+0

당신은 가능성이 사용 사례를 처리하기 위해'XmlAdapter'을 사용할 수있는 다음 기사는 도움이 될 수를 추가하는 정규식을 사용하여 종료 :. HTTP : //blog.bdoughan .com/2011/08/xml-schema-to-java-generating.html –

+0

@BlaiseDoughan 이렇게하면 태그의 값을 형식화 할 수 있지만 태그 요소 자체를 맞춤 설정하는 방법은 보이지 않습니다. 속성. –

+0

[Jaxb : JAXB 자바 클래스를 수정하지 않고 요청 XML의 필드 추가] 중복 가능 (http://stackoverflow.com/questions/11827978/jaxb-append-field-of-request-xml-without-modfying-jaxb -java-class) –

답변

0

나는 XML을 생성하고 속성 :(