나는 내가 다음과 같이 내 XML 컨버터를 정의하기 위해 스프링을 사용하고 Spring3와 JAXB2봄 JAXB2 비 정렬 화 중복 된 XML 루트 요소 이름
와 다른 개체에 simalar XML (같은 루트 요소하지만 다른 필드) 비 정렬 화에 문제가 :
<bean id="xmlConverter" class="org.springframework.http.converter.xml.MarshallingHttpMessageConverter">
<property name="marshaller" ref="jaxbMarshaller"></property>
<property name="unmarshaller" ref="jaxbMarshaller"></property>
<property name="supportedMediaTypes" value="text/xml" />
</bean>
<bean id="jaxbMarshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
<property name="classesToBeBound">
<list>
<value>com.my.project.Object1</value>
<value>com.my.project.Object2</value>
<value>com.my.project.Object3</value>
</list>
</property>
그래서 문제는 각 개체가 같은 @XmlRootElement (이름 = "XML")하지만, 완전히 다른 필드가 내려 온다. 내가 하나의 객체를 정의했을 때 각 객체가 제대로 언 마샬링되었지만 하나 이상을 추가 할 때 마지막 오버레이 문제를 추측하고 있습니다.
누구나이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
편집 : 솔루션 모든 필드가있는 하나의 큰 개체를 만들었으므로이 문제가 해결됩니다. 최상의 솔루션은 아니지만 잘 작동합니다.
안녕하세요, (그래서 XML 이름이 "TransferTo"입니다) 받고 "HttpMessageNotReadableException : 이 가 [클래스 COM을 읽을 수 없습니다 .. .xml.PingResponse] 중첩 예외는 ... javax.xml.bind.UnmarshalException : 예기치 않은 요소 (uri : "", 로컬 : "TransferTo"). 예상되는 요소는 TransferTo >, <{com..xml.msisdninforesponse} TransferTo>, <{com..xml.pingresponse} TransferTo> " 아이디어가 있습니까? –
Marius
다음에 질문을 수정하거나 새 질문을하십시오. http://blog.bdoughan.com/2012/07/jaxb-and-root-elements.html이 문제를 해결하는 데 도움이 될 수 있습니다. – MystyxMac