Skip to content
On this page

CAP Service SDK for Java

Reference Documentation

Getting Started
How to start a new CAP Java project and how to run it locally.
Stack Architecture
One of the key CAP design principles is to be an opinionated but yet open framework. Giving a clear guidance for cutting-edge technologies on the one hand and still keeping the door wide open for custom choice on the other hand, demands a highly flexible CAP Java SDK. The modular architecture reflects this requirement, allowing fine-grained stack configuration and custom extensions.
Services are one of the core concepts of CAP. This section describes how services are represented in the CAP Java SDK and how their event-based APIs can be used. One of the key APIs provided by services is the uniform query API based on CQN statements.
Event Handlers
This section describes how to register event handlers on services. In CAP everything that happens at runtime is an event that is sent to a service. With event handlers the processing of these events can be extended or overridden. Event handlers can be used to handle CRUD events, implement actions and functions and to handle asynchronous events from a messaging service.
Working with Data
This section describes how data is represented and used in the CAP Java SDK.
Building CQL Statements
API to fluently build CQL statements in Java
Executing CQL Statements
API to execute CQL statements on services accepting CQN queries.
Introspecting CQL Statements
API to introspect CDS Query Language (CQL) statements in Java
Working with CDS Models
The Model Reflection API is a set of interfaces, which provide the ability to introspect a CDS model and retrieve details on the services, types, entities, and their elements that are defined by the model.
Persistence Services
Persistence Services are CQN-based database clients. This section describes which database types are supported, how datasources to these databases are created and how they are turned into Persistence Services.
Application Services
Application Services define the APIs that a CAP application exposes to its clients, for example through OData. This section describes how to add business logic to these services, by extending CRUD events and implementing actions and functions.
Fiori Drafts
This section describes which events occur in combination with SAP Fiori Drafts.
Indicating Errors
This section describes the error handling capabilities provided by the CAP Java SDK.
Request Contexts
Request Contexts span the execution of multiple events on (different) services. They provide a common context to these events, by providing user or tenant information or access to headers or query parameter.
ChangeSet Contexts
ChangeSet Contexts are an abstraction around transactions. This chapter describes how ChangeSets are related to transactions and how to manage them with the CAP Java SDK.
Describes authentication and authorization in CAP Java
Remote Services
Remote Services are CQN-based clients to remote APIs that a CAP application consumes. This section describes how to configure and use these services.
CAP Messaging provides support for publish-subscribe-based messaging, which is an asynchronous communication pattern well suited for scenarios where a sender wants to send out information to one or many receivers that are potentially unknown and/or unavailable at the time of sending.
Multitenancy (Classic)
CAP applications can be run as software as a service (SaaS). That means, different customers (so called tenants) can access the application while the data of different tenants is securely isolated. The CAP Java SDK routes user requests that access data automatically to their tenant-specific database container. This section explains how to configure multitenancy for the CAP Java SDK.
Advanced Concepts
Find here an overview of advanced concepts.
Audit Logging
Find here information about the AuditLog service in CAP Java.
Transactional Outbox
Find here information about the Outbox service in CAP Java.
Presents a set of recommended tools that help to understand the current status of running CAP services.
This chapter contains comprehensive guides that help you to work through migrations such as from CAP Java 1.x to CAP Java 2.x.