378.11. XSLT 및 Java 버전 사용에 대한 참고 사항
당사와 함께 공유한 Camel 사용자인 Sameer의 몇 가지 관찰은 다음과 같습니다.
XSLT 엔드포인트의 문제에 직면하는 모든 사람이 이러한 점을 검토하십시오.
간단한 xsl을 사용하여 하나의 xml에서 다른 xml로 간단한 변환을 위해 xslt 끝점을 사용하려고 했습니다. 출력 xml가 계속 나타납니다(경로에서 xslt 프로세서 후)에 콘텐츠가 없는 outermost xml 태그가 있습니다.
DEBUG 로그에 설명이 표시되지 않습니다. 그러나 TRACE 로그에서는 XMLConverter Cryostat를 초기화할 수 없음을 나타내는 오류/경고가 있었습니다.
몇 시간 동안 내 마음의 크랭크를 마친 후 작업을 위해 다음을 수행해야했습니다 (일부를 제공하는 사용자 포럼의 일부 게시물에 감사).
-
class="org.apache.xalan..xsltc.trax.TransformerFactoryImpl"에 대한 Spring context에 있는tfactory Cryostat와 함께 경로에서 transformerFactory옵션을 사용합니다("xslt:my-transformerFactory?transformerfactory=tfactory")
- Xalan cover를 내 maven pom에 추가했습니다.
내 추측은 JDK (I am using 1.6.0_03) 내에 제공된 기본 xml 구문 분석 메커니즘이 이 컨텍스트에서 제대로 작동하지 않으며 오류도 발생하지 않습니다. Xalan으로 전환하면 이렇게 작동합니다. 이는 Camel 문제가 아니지만 xslt 구성 요소 페이지에서 언급해야 할 수 있습니다.
또 다른 참고 사항인 jdk 1.6.0_03은 Camel에서 2.1을 필요로 하는 반면, Cryostat 2.0과 함께 제공됩니다. 한 가지 해결 방법은 2.1을 jvm의 jre/lib/endorsed 디렉토리 또는 컨테이너에서 지정한 대로 추가하는 것입니다.
이 게시물은 새로운bie Camel 드라이버를 잠시 절약할 수 있기를 바랍니다.