2013-02-06 4 views
1

나는Jaxb2Marshaller XSD 스키마 검증 쿼리

<bean id="jaxbMarshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller"> 
    <property name="contextPaths"> 
     <list>    
      <value>com.xxx.yyy.schema.external_request.event</value> 
      <value>com.xxx.yyy.schema.zzz.external_request</value>      
     </list> 
    </property> 
</bean> 

내가이 일을하지 않는 external_request.xsd에 대해 XML의 유효성을 검사하려면, 스프링 3.0.6 Jaxb2Marshaller 구성 이하로 사용하여 사용하고 있습니다. 생성 된 소스에 해당 요소에 대해 언급 한 주석이있는 경우에도 과 같이 스키마 속성을 명시 적으로 전달해야합니까? 이미이 문제에 직면 해있는 사람이 있습니까? 감사!

답변

1

이봐 대신에 당신이 도움이된다면

<bean id="jaxb2Marshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller"> 
    <property name="classesToBeBound"> 
     <list> 
      <value>com.xxx.yyy.schema.external_request.event</value> 
      <value>com.xxx.yyy.schema.zzz.external_request</value>   
     </list> 
    </property> 
</bean> 

답변을 평가 해주십시오 classesToBeBound하게 proprty에 추가 시도 할 수 context paths에 클래스를 추가 될 수있다. 건배

+0

하지만 classToBeBound를 추가하면 모든 클래스를 나열해야한다고 생각합니다. 많은 경우에 해당됩니다. 또한 새 요소가 xsd에 추가되면 자주 업데이트해야하므로 유지 관리가 어려울 것으로 생각됩니다. 나는 한 번 시험해 볼 수있다. 답변 감사합니다. –

+0

귀하의 게시물에서 얻을 수있는 문제는 @XmlElement (name = "abc", required = true)가 봄까지 선택되지 않았기 때문에 classToBeBound – Sudhakar