2009-09-14 1 views

답변

3

JAXB2 XJC 생성 바인딩의 일부 유형에만 JAXBElement 래퍼가 필요합니다. @XMLRootElement 어노테이션이있는 유형에는 랩퍼가 필요하지 않으므로 오브젝트 팩터 리는 랩퍼를 생성하지 않습니다. 이것으로

<complexType name="my-type"> 
    ... 
</complexType> 

<element name="my-type" type="tns:my-type"/> 

:

0

스키마에 요소가 있거나 유형이 있습니까? 이것은 대개 이유입니다.

0

는 JAXB은 XSD는 complexType을 정의하고 예를 들어 동일한 이름이 복합 타입을 사용하여 별도의 요소 정의를 모두 포함하는 경우에만 객체 인스턴스에서 JAXBElement 첨부를 만드는 공장 메소드를 생성 JAXB는 생성 된 클래스에 @XmlRootElement 주석을 주석으로 추가하지 않지만 객체 인스턴스에서 JAXBElement를 작성하는 데 필요한 팩토리 메소드를 제공합니다. 그렇게하면 루트 요소가 아닌 유형의 인스턴스를 루트 요소로 쉽게 직렬화 할 수 있습니다.

최상위 요소로 사용할 complexType 정의 이외에 동일한 이름의 "element"선언을 추가하면 ObjectFactory가 예상되는 팩토리 메소드를 생성합니다.