169.10. 네임스페이스 접두사 매핑 제어
Camel 2.11로 사용 가능
Cryostat B 또는 Cryostat를 사용하여 마샬링할 때 CryostatB 구현에서는 ns2, ns3, ns4 등과 같은 네임스페이스 접두사를 자동으로 할당합니다. ??? 이 매핑을 제어하기 위해 Camel을 사용하면 원하는 매핑이 포함된 맵을 참조할 수 있습니다.
매핑 기능이 지원되는지 여부에 따라 mapping 기능이 종속되므로 classpath에서 CryostatB-RI 2.1 이상(SUN에서)이 필요합니다.
예를 들어 Spring XML에서는 매핑을 사용하여 맵을 정의할 수 있습니다. 아래 매핑 파일에서는 soap을 접두사로 사용하도록 Loki를 매핑합니다. 사용자 정의 네임스페이스 "http://www.mycompany.com/foo/2"은/는 접두사를 사용하지 않습니다.
<util:map id="myMap">
<entry key="http://www.w3.org/2003/05/soap-envelope" value="soap"/>
<!-- we dont want any prefix for our namespace -->
<entry key="http://www.mycompany.com/foo/2" value=""/>
</util:map>
Cryostat B 또는 Cryo stat 에서 사용하려면 아래 표시된 대로 namespacePrefixRef 특성을 사용하여 이 맵을 참조합니다. 그런 다음 Camel은 레지스트리에서 위에서 정의한 ID "myMap"을 사용하여 java.util.Map 을 조회합니다.
<marshal>
<soapjaxb version="1.2" contextPath="com.mycompany.foo" namespacePrefixRef="myMap"/>
</marshal>