This repository contains the material for the SAP TechEd 2023 session IN260 - Resilient Integration of SAP Solutions on SAP BTP.
This session dives into how tools such as SAP Cloud Application Programming Model, SAP Cloud SDK, and others can be used to develop applications that connect to SAP applications of any kind through APIs.
SAP Cloud Application Programming Model or CAP is a framework of languages, libraries, and tools for building enterprise-grade services and applications. It guides developers through proven best practices and accelerates the development process.
SAP Cloud SDK is a set of libraries and tools for developers to build cloud-native applications on the SAP Business Technology Platform (SAP BTP). CAP internally uses the SAP Cloud SDK for service consumption.
Over the course of this workshop, you will create an application that consumes both an OpenAPI and an OData service in a resilient manner.
For the OData part, you will see how to fetch data from SAP SuccessFactors Goal Plan API by using CAP's Remote Services.
For the OpenAPI part, you will see how to use the SAP Cloud SDK to conveniently interact with the service in a type-safe manner.
You could then follow similar steps to connect to any other SAP application that exposes an API and easily build extensions for them in the cloud in a resilient manner.
The requirements to follow the exercises in this repository are:
- Java 17
- Maven 3.9
- Node 18+
- NPM 9+
- cdsdk 7.0+
- cf cli 7.7+
- Getting Started
- Exercise 1 - Understand the Existing Project Setup
- Exercise 2 - Use SAP Cloud SDK to make Your Application Resilient
- Exercise 2.1 - Add the Required Dependencies to Your Project
- Exercise 2.2 - Use the Resilience API
- Exercise 2.3 - Use the Time Limiter Pattern
- Exercise 2.4 - Locally Test the Resilience Patterns
- Exercise 2.5 - The Retry Pattern
- Exercise 2.6 - The Rate-Limiter Pattern
- Exercise 2.7 (Optional) - The Circuit Breaker Pattern
- Exercise 2.8 (Optional) - Interactions between Resilience Patterns
- Exercise 3 - Caching with the SAP Cloud SDK
- Exercise 4 (Optional) - Asynchronous Operations
- Exercise 5 - Multi-Tenancy and Isolation
- Exercise 6 (Optional) - Deploying the Application to SAP Business Technology Platform
- Share your feedback
- SAP Customer Influence for SAP S/4HANA Cloud APIs.
Please read the CONTRIBUTING.md to understand the contribution guidelines.
Please read the SAP Open Source Code of Conduct.
Support for the content in this repository is available during the actual time of the online session for which this content has been designed. Otherwise, you may request support via the Issues tab.
Copyright (c) 2023 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.