311장. SOAP DataFormat

Camel 버전 2.3에서 사용 가능

SOAP는 JAXB2 및 JAX-WS 주석을 사용하여 마샬링 및 반래의 SOAP 페이로드를 마샬링하는 데이터 형식입니다. CXF 스택 없이도 Apache CXF의 기본 기능을 제공합니다.

지원되는 SOAP 버전

SOAP 1.1은 기본적으로 지원됩니다. SOAP 1.2는 Camel 2.11에서 지원됩니다.

네임스페이스 접두사 매핑

SOAP 데이터 형식을 사용하여 마샬링할 때 네임스페이스 접두사 매핑을 제어하는 방법에 대한 자세한 내용은 JAXB 를 참조하십시오.

311.1. SOAP 옵션

SOAP dataformat은 아래 나열된 7가지 옵션을 지원합니다.

이름기본값Java Type설명

contextPath

 

문자열

JAXB 클래스가 있는 패키지 이름입니다.

인코딩

 

문자열

특정 인코딩을 과도하게 하고 사용할 수 있습니다.

elementNameStrategyRef

 

문자열

레지스트리에서 조회하는 요소 전략을 나타냅니다. 요소 이름 전략은 두 가지 용도로 사용됩니다. 첫 번째는 지정된 개체의 xml 요소 이름을 찾고, 개체를 SOAP 메시지로 마샬링할 때 soap 작업을 찾는 것입니다. 두 번째는 지정된 soap fault 이름에 대한 Exception 클래스를 찾는 것입니다. 다음 세 가지 요소 전략 클래스 이름이 상자에서 제공됩니다. QNameStrategy - 인스턴스화에 구성된 고정 qName을 사용합니다. 예외 조회는 지원되지 않습니다 TypeNameStrategy - 지정된 유형의 XMLType 주석에서 이름 및 네임스페이스를 사용합니다. namespace를 설정하지 않으면 package-info가 사용됩니다. 예외 조회는 지원되지 않습니다. 즉 웹 서비스 인터페이스에서 정보를 사용하여 유형 이름을 확인하고 SOAP 결함의 예외 클래스를 패키지 이름 org.apache.camel.dataformat.soap.soap.name으로 생성한 경우 cxf-codegen 또는 유사한 툴로 웹 서비스 스텁 코드를 생성했을 것입니다. 주석이 있는 서비스 인터페이스가 없는 경우 QNameStrategy 또는 TypeNameStrategy를 사용해야 합니다.

version

1.1

문자열

SOAP 버전은 1.1 또는 1.2여야 합니다. Default 1.1 입니다.

namespacePrefixRef

 

문자열

JAXB 또는 SOAP를 사용하여 마샬링할 때 JAXB 구현에서는 ns2, ns3, ns4 등과 같은 네임스페이스 접두사를 자동으로 할당합니다. 이 매핑을 제어하기 위해 Camel을 사용하면 원하는 매핑이 포함된 맵을 참조할 수 있습니다.

schema

 

문자열

기존 스키마에 대해 검증합니다. 접두사 classpath:, file: 또는 http:를 사용하여 리소스를 해석하는 방법을 지정할 수 있습니다. ',' 문자를 사용하여 여러 스키마 파일을 분리할 수 있습니다.

contentTypeHeader

false

부울

데이터 형식이 데이터 형식에서 수행할 수 있는 경우 데이터 형식의 유형으로 Content-Type 헤더를 설정해야 하는지 여부입니다. 예를 들어 데이터 형식을 XML로 마샬링하거나, JSon으로 마샬링되는 데이터 형식에 대한 application/json 등이 있습니다.