290.14. SAP 예
290.14.1. 예 1: SAP의 데이터 링크 복사링크가 클립보드에 복사되었습니다!
290.14.1. 개요 링크 복사링크가 클립보드에 복사되었습니다!
이 예제에서는 SAP에서 FlightCustomer
비즈니스 개체 데이터를 읽는 경로를 보여줍니다. 이 경로는 SAP 동기 RFC 대상 끝점을 사용하여 데이터를 검색하는 데 FlightCustomer
BAPI 메서드인 BAPI_FLCUST_GETLIST
를 호출합니다.
290.14.2. 라우팅을 위한 Java DSL 링크 복사링크가 클립보드에 복사되었습니다!
예제 경로의 Java DSL은 다음과 같습니다.
from("direct:getFlightCustomerInfo") .to("bean:createFlightCustomerGetListRequest") .to("sap-srfc-destination:nplDest:BAPI_FLCUST_GETLIST") .to("bean:returnFlightCustomerInfo");
from("direct:getFlightCustomerInfo")
.to("bean:createFlightCustomerGetListRequest")
.to("sap-srfc-destination:nplDest:BAPI_FLCUST_GETLIST")
.to("bean:returnFlightCustomerInfo");
290.14.3. 라우팅을 위한 XML DSL 링크 복사링크가 클립보드에 복사되었습니다!
동일한 경로에 대한 Spring DSL은 다음과 같습니다.
290.14.4. createFlightCustomerGetListRequest Quarkus 링크 복사링크가 클립보드에 복사되었습니다!
createFlightCustomerGetListRequest
Quarkus는 후속 SAP 끝점의 RFC 호출에 사용된 교환 방법으로 SAP 요청 오브젝트를 빌드합니다. 다음 코드 조각은 요청 오브젝트를 빌드하는 일련의 작업을 보여줍니다.
290.14.5. returnFlightCustomerInfo bean 링크 복사링크가 클립보드에 복사되었습니다!
returnFlightCustomerInfo
Quarkus는 이전 SAP 끝점에서 수신하는 교환 방법으로 SAP 응답 오브젝트에서 데이터를 추출해야 합니다. 다음 코드 조각은 응답 개체에서 데이터를 추출하는 일련의 작업을 보여줍니다.
290.14.2. 예 2: SAP에 데이터 작성 링크 복사링크가 클립보드에 복사되었습니다!
290.14.6. 개요 링크 복사링크가 클립보드에 복사되었습니다!
이 예에서는 SAP에서 FlightTrip
비즈니스 개체 인스턴스를 생성하는 경로를 보여줍니다. 경로는 대상 끝점을 사용하여 오브젝트를 생성하여 FlightTrip
BAPI 메서드 BAPI_FLTRIP_CREATE
를 호출합니다.
290.14.7. 라우팅을 위한 Java DSL 링크 복사링크가 클립보드에 복사되었습니다!
예제 경로의 Java DSL은 다음과 같습니다.
from("direct:createFlightTrip") .to("bean:createFlightTripRequest") .to("sap-srfc-destination:nplDest:BAPI_FLTRIP_CREATE?transacted=true") .to("bean:returnFlightTripResponse");
from("direct:createFlightTrip")
.to("bean:createFlightTripRequest")
.to("sap-srfc-destination:nplDest:BAPI_FLTRIP_CREATE?transacted=true")
.to("bean:returnFlightTripResponse");
290.14.8. 라우팅을 위한 XML DSL 링크 복사링크가 클립보드에 복사되었습니다!
동일한 경로에 대한 Spring DSL은 다음과 같습니다.
290.14.9. 트랜잭션 지원 링크 복사링크가 클립보드에 복사되었습니다!
SAP 엔드포인트의 URL에는 transacted
옵션이 true
로 설정되어 있습니다. 290.11절. “트랜잭션 지원” 에서 설명한 대로 이 옵션이 활성화되면 끝점은 RFC 호출을 호출하기 전에 SAP 트랜잭션 세션이 시작되었는지 확인합니다. 이 끝점의 RFC는 SAP에서 새 데이터를 생성하므로 SAP에서 경로를 영구적으로 변경하려면 이 옵션이 필요합니다.
290.14.10. 요청 매개변수 채우기 링크 복사링크가 클립보드에 복사되었습니다!
createFlightTripRequest
및 returnFlightTripResponse
빈은 요청 매개변수를 SAP 요청으로 채우고 SAP 응답에서 응답 매개 변수를 각각 추출하고 이전 예제에서 설명한 것과 동일한 작업 순서에 따라 각각 SAP 응답에서 응답 매개변수를 추출합니다.
290.14.3. 예 3: SAP에서 요청을 처리 링크 복사링크가 클립보드에 복사되었습니다!
290.14.11. 개요 링크 복사링크가 클립보드에 복사되었습니다!
이 예제에서는 경로에 의해 구현된 BOOK_FLIGHT
RFC로의 SAP 요청을 처리하는 경로를 보여줍니다. 또한, 이는 구성 요소의 XML 직렬화 지원을 보여줍니다. 이 지원을 통해 CryostatB를 사용하여 SAP 요청 개체 및 응답 개체를 사용자 지정 빈에 분리하고 마샬링합니다.
이 경로는 여행 에이전트를 대신하여 FlightTrip
비즈니스 개체를 생성합니다. FlightCustomer
. 이 경로는 먼저 SAP 서버 엔드포인트에서 수신한 SAP 요청 오브젝트를 사용자 지정 CryostatB 8080으로 묶습니다. 그런 다음 이 사용자 지정 8080은 트립션을 생성하는 데 필요한 여행 에이전트, 트래블 연결 및 여객 정보를 수집하는 3개의 하위 경로로 멀티 캐스트됩니다. 최종 하위 경로는 이전 예와 같이 SAP에서 여행 오브젝트를 생성합니다. 최종 하위 경로도 만들고 반환 하는 사용자 지정 CryostatB 8080은 SAP 응답 개체로 마샬링되고 서버 끝점에 의해 반환 됩니다.
290.14.12. 라우팅을 위한 Java DSL 링크 복사링크가 클립보드에 복사되었습니다!
예제 경로의 Java DSL은 다음과 같습니다.
290.14.13. 라우팅을 위한 XML DSL 링크 복사링크가 클립보드에 복사되었습니다!
동일한 경로에 대한 XML DSL은 다음과 같습니다.
290.14.14. BookFlightRequestans 링크 복사링크가 클립보드에 복사되었습니다!
다음 목록에서는 직렬화된 형식의 SAP BOOK_FLIGHT
요청 오브젝트에서 요약하지 않는 CryostatB 8080을 보여줍니다.
290.14.15. BookFlightResponse 8080 링크 복사링크가 클립보드에 복사되었습니다!
다음 목록은 SAP BOOK_FLIGHT
응답 오브젝트의 직렬화된 형식으로 마샬링하는 CryostatB 8080을 보여줍니다.
응답 오브젝트의 complex 매개변수 필드는 응답의 하위 요소로 직렬화됩니다.
290.14.16. FeelInfoans 링크 복사링크가 클립보드에 복사되었습니다!
다음 목록에서는 복잡한 구조 매개변수 FLTINFO
의 직렬화된 형태로 마샬링하는 CryostatB 8080을 보여줍니다.
290.14.17. ConnectionInfoTable 8080 링크 복사링크가 클립보드에 복사되었습니다!
다음 목록은 복잡한 테이블 매개변수인 CONNINFO
의 직렬화된 형식으로 마샬링하는 CryostatB 8080을 보여줍니다.
CryostatB 8080의 루트 요소 유형의 이름은 _
Cryostat로 접미사가 지정된 행 구조 유형의 이름에 해당하며, Cryostat에는 행 요소 목록이 포함됩니다.
290.14.18. ConnectionInfo^n 링크 복사링크가 클립보드에 복사되었습니다!
다음 목록은 위의 테이블 행 요소의 직렬화된 형식으로 마샬링하는 CryostatB 8080을 보여줍니다.