372장. XML JSon DataFormat (더 이상 사용되지 않음)
Camel 버전 2.10에서 사용 가능
Camel은 XML 및 JSON 관련 변환을 수행하기 위해 다양한 데이터 형식을 이미 지원하지만 모두 입력으로 (마샬링용) 또는 output(마샬링용)으로 DestinationRule을 생성해야 합니다. 이 데이터 형식은 intermediateECDHEs를 거치지 않고 XML에서 JSON으로 변환하고 직접 변환하는 기능을 제공합니다.
이 데이터 형식은 Json-lib 라이브러리를 활용하여 직접 변환을 수행합니다. 이 컨텍스트에서 XML은 상위 수준 형식으로 간주되지만 JSON은 하위 수준 형식입니다. 따라서 marshal/unmarshal 의미 체계는 다음과 같이 할당됩니다.
- XML에서 JSON으로 변환
- JSON에서 XML로 변환 취소합니다.
372.1. 옵션 링크 복사링크가 클립보드에 복사되었습니다!
XML JSon 데이터 형식은 아래에 나열된 13 옵션을 지원합니다.
이름 | Default | Java Type | 설명 |
---|---|---|---|
인코딩 |
| 인코딩을 설정합니다. unmarshalling (JSON에서 XML로 변환)에 사용됩니다. | |
elementName |
| 각 배열 요소를 나타내는 XML 요소의 이름을 지정합니다. unmarshalling (JSON에서 XML로 변환)에 사용됩니다. | |
arrayName |
| 최상위 XML 요소의 이름을 지정합니다. unmarshalling (JSON에서 XML로 변환)에 사용됩니다. 예를 들어 1, 2, 3을 변환할 때 기본적으로 IRQ로 출력됩니다. 이 옵션 또는 rootName을 설정하면 요소 'a' 요소의 이름을 변경할 수 있습니다. | |
forceTopLevelObject |
|
| 결과 JSON이 이름이 XML 루트 요소와 일치하는 최상위 요소로 시작되는지 여부를 결정합니다. 마샬링에 사용됩니다(XML에서 JSon으로 변환). 비활성화된 경우 XML 문자열 12는 'x: '1', 'y': '2'로 변환됩니다. 그렇지 않으면 'a': 'x: '1', 'y': '2'가 됩니다. |
namespaceLenient |
|
| 불완전한 네임스페이스 접두사에 포함할 플래그를 지정합니다. unmarshalling (JSON에서 XML로 변환)에 사용됩니다. 대부분의 경우 json-lib는 처리와 일치하도록 런타임 시 이 플래그를 자동으로 변경합니다. |
rootName |
| 최상위 요소의 이름을 지정합니다. unmarshalling (JSON에서 XML로 변환)에 사용됩니다. 설정되지 않은 경우 json-lib는 arrayName 또는 objectName(현재 이 데이터 형식으로 구성할 수 없는 값: 'o')을 사용합니다. 'root'로 설정하면 JSON 문자열 'x': 'value1', 'y' : 'value2'가 value1value2로 변환됩니다. 그렇지 않으면 'root' 요소의 이름은 'o'입니다. | |
skipWhitespace |
|
| XML 요소 간의 공백이 텍스트 값으로 사용되거나 무시되는지 여부를 결정합니다. 마샬링에 사용됩니다(XML에서 JSon으로 변환). |
trimSpaces |
|
| 문자열 값에서 선행 공백과 후행 공백이 생략되는지 여부를 결정합니다.Determines whether leading and trailing white spaces will be omitted from String values. 마샬링에 사용됩니다(XML에서 JSon으로 변환). |
skipNamespaces |
|
| 네임스페이스를 무시해야 하는지 여부를 나타냅니다. 기본적으로 xmlns 요소를 사용하여 JSON 출력에 추가됩니다. 마샬링에 사용됩니다(XML에서 JSon으로 변환). |
removeNamespacePrefixes |
|
| 결과 JSON 문자열이 해당 문자열을 포함하지 않도록 XML 정규화된 요소에서 네임스페이스 접두사를 제거합니다. 마샬링에 사용됩니다(XML에서 JSon으로 변환). |
expandableProperties |
| 확장 가능한 속성을 사용하면 JSON 키와 같은 로컬 이름이 있는 반복적인 XML 요소(예: number: 1,2,3 , 일반적으로 elementName을 설정하여 e가 수정될 수 있음)로 변환되는 JSON 배열 요소가 XML로 변환됩니다. 대신 number를marshalling(JSON에서 XML 변환)에 사용하는 확장 가능한 속성으로 변환하는 경우, JSON 배열 요소가 XML로 변환됩니다. | |
typeHints |
| JSON으로 변환을 지원하기 위해 결과 XML에 type 힌트를 추가합니다. unmarshalling (JSON에서 XML로 변환)에 사용됩니다. | |
contentTypeHeader |
|
| 데이터 형식이 이를 수행할 수 있는 경우 데이터 형식이 데이터 형식에서 형식을 사용하여 Content-Type 헤더를 설정해야 하는지의 여부입니다. 예를 들어 데이터 형식의 application/xml은 XML로 마샬링하거나 JSon 등에 데이터 형식의 경우 application/json입니다. |