30.2. XML DSL
30.2.1. XML DSL의 간단한 표현식 링크 복사링크가 클립보드에 복사되었습니다!
XML DSL에서는 표현식을 간단한 요소 내에 배치하여 간단한 표현식을 사용할 수 있습니다. 예를 들어
foo
헤더의 내용을 기반으로 필터링을 수행하는 경로를 정의하려면 다음을 수행합니다.
30.2.2. 대체 자리 표시자 구문 링크 복사링크가 클립보드에 복사되었습니다!
예를 들어 Spring 속성 자리 표시자 또는 OSGi 블루프린트 속성 자리 표시자가 있는 경우, ${Expression}
구문이 다른 속성 자리 표시자 구문과 충돌하는 경우가 있습니다. 이 경우 단순 표현식에 대해 대체 구문 $simple{Expression}
을 사용하여 자리 표시자를 모호할 수 있습니다. 예를 들면 다음과 같습니다.
<simple>Hello $simple{in.header.name}, how are you?</simple>
<simple>Hello $simple{in.header.name}, how are you?</simple>
30.2.3. 시작 및 종료 토큰 사용자 정의 링크 복사링크가 클립보드에 복사되었습니다!
XML 구성에서 SimpleLanguage
인스턴스를 재정의하여 시작 및 종료 토큰(기본적으로{
및 }
)을 사용자 지정할 수 있습니다. 예를 들어 시작 및 끝 토큰을 [
및 ]
로 변경하려면 다음과 같이 XML 구성 파일에 새 SimpleLanguage
8080을 정의합니다.
<bean id="simple" class="org.apache.camel.language.simple.SimpleLanguage"> <constructor-arg name="functionStartToken" value="["/> <constructor-arg name="functionEndToken" value="]"/> </bean>
<bean id="simple" class="org.apache.camel.language.simple.SimpleLanguage">
<constructor-arg name="functionStartToken" value="["/>
<constructor-arg name="functionEndToken" value="]"/>
</bean>
시작 및 종료 토큰을 사용자 정의하면 클래스 경로에서 동일한 camel-core
라이브러리를 공유하는 모든 Apache Camel 애플리케이션에 영향을 미칩니다. 예를 들어 OSGi 서버에서는 많은 애플리케이션에 영향을 미칠 수 있지만 웹 애플리케이션(WAR 파일)에서는 웹 애플리케이션 자체에만 영향을 미칩니다.
30.2.4. XML DSL의 공백 및 자동 할당 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 간단한 표현식을 따르는 공백은 XML DSL에서 자동으로 트리밍됩니다. 공백을 중심으로 하는 이 표현식은 다음과 같습니다.
<transform> <simple> data=${body} </simple> </transform>
<transform>
<simple>
data=${body}
</simple>
</transform>
이 표현식은 자동으로 트리밍되므로 이 표현식(백백 공간 주변 없음)과 동일합니다.
<transform> <simple>data=${body}</simple> </transform>
<transform>
<simple>data=${body}</simple>
</transform>
식 전이나 후에 줄 바꿈 문자를 포함하려는 경우 다음과 같이 줄 바꿈 문자를 명시적으로 추가할 수 있습니다.
<transform> <simple>data=${body}\n</simple> </transform>
<transform>
<simple>data=${body}\n</simple>
</transform>
또는 트리밍
속성을 false
로 설정하여 다음과 같이 자동 분석을 전환할 수 있습니다.
<transform trim="false"> <simple>data=${body} </simple> </transform>
<transform trim="false">
<simple>data=${body}
</simple>
</transform>