290.12. RFC에 대한 XML 직렬화


290.12.1. 개요

SAP 요청 및 응답 개체는 이러한 개체를 XML 문서로 직렬화할 수 있도록 하는 XML 직렬화 형식을 지원합니다.

290.12.2. XML 네임스페이스

리포지토리의 각 RFC는 직렬화된 양식의 Request 및 Response 개체를 구성하는 요소에 대한 특정 XML 네임스페이스를 정의합니다. 이 네임스페이스 URL의 형식은 다음과 같습니다.

http://sap.fusesource.org/rfc/<Repository Name>/<RFC Name>

RFC 네임스페이스 URL에는 일반적인 http://sap.fusesource.org/rfc 접두사 뒤에 RFC의 메타데이터가 정의된 리포지토리 이름이 있습니다. URL의 최종 구성 요소는 RFC 자체의 이름입니다.

290.12.3. 요청 및 응답 XML 문서

SAP 요청 개체는 Request라는 문서의 루트 요소를 사용하여 XML 문서로 직렬화되고 요청의 RFC 네임스페이스에 의해 범위가 지정됩니다.

<?xml version="1.0" encoding="ASCII"?>
<BOOK_FLIGHT:Request
     xmlns:BOOK_FLIGHT="http://sap.fusesource.org/rfc/nplServer/BOOK_FLIGHT">
    ...
</BOOK_FLIGHT:Request>

SAP 응답 오브젝트는 Response라는 문서의 루트 요소를 사용하여 XML 문서로 직렬화되며 응답 RFC의 네임스페이스로 범위가 지정됩니다.

<?xml version="1.0" encoding="ASCII"?>
<BOOK_FLIGHT:Response
     xmlns:BOOK_FLIGHT="http://sap.fusesource.org/rfc/nplServer/BOOK_FLIGHT">
    ...
</BOOK_FLIGHT:Response>

290.12.4. 구조 필드

매개변수 목록 또는 중첩된 구조의 구조 필드는 요소로 직렬화됩니다. 직렬화된 구조의 요소 이름은 포함된 매개 변수 목록, 구조 또는 테이블 행 항목 내에 있는 구조의 필드 이름에 해당합니다.

<BOOK_FLIGHT:FLTINFO
     xmlns:BOOK_FLIGHT="http://sap.fusesource.org/rfc/nplServer/BOOK_FLIGHT">
    ...
</BOOK_FLIGHT:FLTINFO>
참고

RFC 네임스페이스에 있는 구조 요소의 유형 이름은 다음 예와 같이 구조를 정의하는 레코드 메타데이터 오브젝트의 이름에 해당합니다.

<xs:schema
     targetNamespace="http://sap.fusesource.org/rfc/nplServer/BOOK_FLIGHT">
     xmlns:xs="http://www.w3.org/2001/XMLSchema">
    ...
    <xs:complexType name="FLTINFO_STRUCTURE”>
    ...
    </xs:complexType>
    ...
</xs:schema>

이 차이점은 290.14.3절. “예 3: SAP에서 요청을 처리” 에서 볼 수 있는 것처럼 구조를 마샬링하고 unmarshal으로 지정하는 경우 중요합니다.

290.12.5. 테이블 필드

매개변수 목록 또는 중첩된 구조의 테이블 필드는 요소로 직렬화됩니다. 직렬화된 구조의 요소 이름은 포함된 매개변수 목록, 구조 또는 테이블 행 항목 내에 있는 테이블의 필드 이름에 해당합니다. table 요소에는 테이블의 행 항목의 직렬화된 값을 보유하는 일련의 행 요소가 포함되어 있습니다.

<BOOK_FLIGHT:CONNINFO
     xmlns:BOOK_FLIGHT="http://sap.fusesource.org/rfc/nplServer/BOOK_FLIGHT">
    <row ... > ... </row>
    ...
    <row ... > ... </row>
</BOOK_FLIGHT:CONNINFO>
참고

RFC 네임 스페이스에 있는 테이블 요소의 유형 이름은 _ Cryostat가 접미사로 지정된 테이블의 행 구조를 정의하는 레코드 메타데이터 오브젝트의 이름에 해당합니다. RFC 이름의 테이블 행 요소의 유형 이름은 다음 예와 같이 테이블의 행 구조를 정의하는 레코드 메타데이터 오브젝트의 이름에 해당합니다.

<xs:schema
     targetNamespace="http://sap.fusesource.org/rfc/nplServer/BOOK_FLIGHT"
     xmlns:xs="http://www.w3.org/2001/XMLSchema">
    ...
    <xs:complextType name="CONNECTION_INFO_STRUCTURE_TABLE”>
        <xs:sequence>
            <xs:element
                name="row”
                minOccures="0”
                maxOccurs="unbounded”
                type="CONNECTION_INFO_STRUCTURE”/>
            ...
            <xs:sequence>
        </xs:sequence>
    </xs:complexType>

    <xs:complextType name="CONNECTION_INFO_STRUCTURE”>
            ...
    </xs:complexType>
    ...
</xs:schema>

이 차이점은 290.14.3절. “예 3: SAP에서 요청을 처리” 에서 볼 수 있는 것처럼 구조를 마샬링하고 unmarshal으로 지정하는 경우 중요합니다.

290.12.6. 기본 필드

매개변수 목록 또는 중첩된 구조의 기본 필드는 enclosing 매개변수 목록 또는 구조의 요소에서 속성으로 직렬화됩니다. 직렬화된 필드의 속성 이름은 다음 예제와 같이 포함된 매개 변수 목록, 구조 또는 테이블 행 항목 내의 필드 이름에 해당합니다.

<?xml version="1.0" encoding="ASCII"?>
<BOOK_FLIGHT:Request
     xmlns:BOOK_FLIGHT="http://sap.fusesource.org/rfc/nplServer/BOOK_FLIGHT"
     CUSTNAME="James Legrand"
    PASSFORM="Mr"
    PASSNAME="Travelin Joe"
    PASSBIRTH="1990-03-17T00:00:00.000-0500"
    FLIGHTDATE="2014-03-19T00:00:00.000-0400"
    TRAVELAGENCYNUMBER="00000110"
    DESTINATION_FROM="SFO"
    DESTINATION_TO="FRA"/>

290.12.7. 날짜 및 시간 형식

날짜 및 시간 필드는 다음 형식을 사용하여 속성 값으로 직렬화됩니다.

yyyy-MM-dd'T'HH:mm:ss.SSSZ

날짜 필드는 연도, 월, 일 및 시간대 구성 요소 세트로 직렬화됩니다.

DEPDATE="2014-03-19T00:00:00.000-0400"

시간 필드는 hour, minute, second, millisecond 및 timezone 구성 요소 세트로만 직렬화됩니다.

DEPTIME="1970-01-01T16:00:00.000-0500"
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.