168.11. 스키마 검증
Camel 2.11에서 사용 가능
ECDHEB 데이터 형식은 / XML에서 마샬링 및 마샬링 해제하여 유효성 검사를 지원합니다. 접두사 classpath:, file: 또는 http: 를 사용하여 해석하여 리소스의 방법을 지정할 수 있습니다. ',' 문자를 사용하여 여러 스키마 파일을 분리할 수 있습니다.
알려진 문제
Camel 2.11.0 및 2.11.1은 여러 'Exchange'를 병렬로 검증하여 알려진 문제가 있습니다. CAMEL-6630 참조. 이 문제는 Camel 2.11.2/2.12.0으로 수정되었습니다.
Java DSL을 사용하여 다음과 같은 방법으로 구성할 수 있습니다.
JaxbDataFormat jaxbDataFormat = new JaxbDataFormat(); jaxbDataFormat.setContextPath(Person.class.getPackage().getName()); jaxbDataFormat.setSchema("classpath:person.xsd,classpath:address.xsd");
JaxbDataFormat jaxbDataFormat = new JaxbDataFormat();
jaxbDataFormat.setContextPath(Person.class.getPackage().getName());
jaxbDataFormat.setSchema("classpath:person.xsd,classpath:address.xsd");
XML DSL을 사용하여 동일한 작업을 수행할 수 있습니다.
<marshal> <jaxb id="jaxb" schema="classpath:person.xsd,classpath:address.xsd"/> </marshal>
<marshal>
<jaxb id="jaxb" schema="classpath:person.xsd,classpath:address.xsd"/>
</marshal>
Camel은 JDK와 함께 제공되는 Schema
ECDHEy가 스레드로부터 안전하지 않기 때문에 단식에 Schema
ECDHEy 인스턴스를 만들고 풀링합니다.
그러나 스레드로부터 안전한 SchemaECDHEy 구현이
있는 경우 다음 중 하나를 사용하도록ECDHEB 데이터 형식을 구성할 수 있습니다.
JaxbDataFormat jaxbDataFormat = new JaxbDataFormat(); jaxbDataFormat.setSchemaFactory(thradSafeSchemaFactory);
JaxbDataFormat jaxbDataFormat = new JaxbDataFormat();
jaxbDataFormat.setSchemaFactory(thradSafeSchemaFactory);