Search

CDS Properties

The following table lists all configuration properties, that can be used to configure the CAP Java SDK.

Note

In property files <index> should be replaced with a number and <key> with an arbitrary String. In YAML files, you can use standard YAML list and map structures.

Property Type Default Value Description
cds.environment     Properties for environments, like local development or CloudFoundry.
cds.environment.local     Properties for the local environment.
cds.environment.local.defaultEnvPath String   File-system path to the default environment JSON file.
The file follows the structure of CloudFoundry’s VCAP_SERVICES and VCAP_APPLICATION environment variables.
If this property specifies a folder, the filename default-env.json is appended to it.
cds.dataSource     Properties for the primary data source used by the default persistence service.
cds.dataSource.embedded boolean false Determines, if the data source is considered embedded (in-memory).
cds.dataSource.serviceName String   The name of the primary service binding, used by the default persistence service.
cds.dataSource.csvInitializationMode String embedded Determines in which scenarios the default persistence service is initialized with CSV data.
By default CSV initialization only happens, if the data source is embedded (in-memory).
Possible values are: embedded, never, always.
cds.dataSource.csvFileSuffix String .csv The file suffix of CSV files.
cds.dataSource.csvPaths List<String> db/data/**, db/csv/**, ../db/data/**, ../db/csv/** The file-system paths to search for CSV files in.
Using /** at the end of the path triggers a recursive search.
cds.model     Properties for the CDS model.
cds.model.csnPath String edmx/csn.json The resource path to the csn.json file.
cds.security     Properties for security configurations of services and endpoints.
cds.security.openUnrestrictedEndpoints boolean true Determines, if protocol adapter endpoints that do not require authorization also do not enforce authentication.
cds.security.openMetadataEndpoints boolean false Determines, if OData $metadata endpoints are available without authentication.
cds.security.authenticateUnknownEndpoints boolean true Determines, if security configurations enforce authentication for endpoints not managed by CAP protocol-adapters.
cds.security.draftProtection     Properties to control the protection of drafts.
If a draft is protected it is only accessible by its creator.
cds.security.draftProtection.enabled boolean true Determines, if it is enabled.
cds.security.xsuaa     Properties for XSUAA based authentication.
cds.security.xsuaa.serviceName String   The name of the XSUAA service binding, used for the XSUAA security auto-configuration.
cds.security.xsuaa.enabled boolean true Determines, if it is enabled.
cds.security.xsuaa.authConfig     Properties for the XSUAA Spring security auto-configuration.
cds.security.xsuaa.authConfig.enabled boolean true Determines, if it is enabled.
cds.security.mock     Properties for mock-user based authentication.
cds.security.mock.enabled boolean true Determines, if it is enabled.
cds.security.mock.users     The list of mock-users, used for basic authentication in local development and test scenarios.
cds.security.mock.users.<index>.id String   The ID of the mock-user.
cds.security.mock.users.<index>.name String   The (mandatory) name of the mock-user.
It is used to perform the basic authentication.
cds.security.mock.users.<index>.password String   The (optional) password of the mock-user.
It is used to perform the basic authentication.
cds.security.mock.users.<index>.tenant String   The tenant of the mock-user.
cds.security.mock.users.<index>.systemUser boolean false Determines, if this mock-user is treated as a system user.
cds.security.mock.users.<index>.privileged boolean false Determines, if this mock-user is treated as the privileged user.
cds.security.mock.users.<index>.roles List<String>   The list of roles, that are assigned to this mock-user.
cds.security.mock.users.<index>.attributes Map<String,List<String>>   A map of user attributes, that are assigned to the mock-user.
The name of the attribute needs to be given as the key.
The attribute values are provided as a list.
cds.security.mock.users.<index>.unrestricted List<String>   A list of attribute names, for which the mock-user has no restrictions.
This is treated as if the mock-user effectively had all possible values of this attribute assigned.
cds.security.mock.users.<index>.additional Map<String,Object>   A map of additional properties of the mock-user.
It can be used to mock authentication specific properties (e.g. email address).
The name of the additional attribute needs to be given as the key.
The value of the attribute can be provided as an arbitrary object.
cds.odataV4     Properties for the OData V4 protocol adapter.
cds.odataV4.contextAbsoluteUrl boolean false Determines, if URLs in the @odata.context response annotation are absolute.
cds.odataV4.edmxPath String edmx/v4 The JAR resource path to search for OData V4 EDMX files.
cds.odataV4.endpoint     Properties of the OData V4 protocol adapter endpoint.
cds.odataV4.endpoint.path String /odata/v4 The base-path of the adapter endpoint.
cds.odataV4.endpoint.enabled boolean true Determines, if it is enabled.
cds.odataV4.indexPage     Properties of the OData V4 index page.
cds.odataV4.indexPage.path String / The base-path of the adapter endpoint.
cds.odataV4.indexPage.enabled boolean true Determines, if it is enabled.
cds.odataV2     Properties for the OData V2 protocol adapter.
cds.odataV2.edmxPath String edmx/v2 The JAR resource path to search for OData V2 EDMX files.
cds.odataV2.endpoint     Properties of the OData V2 protocol adapter endpoint.
cds.odataV2.endpoint.path String /odata/v2 The base-path of the adapter endpoint.
cds.odataV2.endpoint.enabled boolean true Determines, if it is enabled.
cds.messaging     Properties for messaging services.
cds.messaging.routes     The list of routes for the composite messaging service.
The first route that matches is used. Therefore the order of these routes has significance.
cds.messaging.routes.<index>.service String   The target service of the route.
cds.messaging.routes.<index>.topics List<String>   The list of topics, which are propagated to/from the target service.
cds.messaging.services     Properties for messaging services.
The key can be choosen arbitrarily and is mainly intended to be able to split configuration across multiple profiles.
cds.messaging.services.<key>.name String   The name of the messaging service.
cds.messaging.services.<key>.kind String   The kind of the messaging service.
It usually reflects the corresponding service binding type.
Possible values are: file-based-messaging, enterprise-messaging, mqueue-sandbox.
cds.messaging.services.<key>.binding String   The name of the service binding used for this messaging service.
In case of file-based-messaging this specifies the file-system path to the exchange file.
cds.messaging.services.<key>.enabled boolean true Determines, if it is enabled.
cds.messaging.services.<key>.connection     Properties for the JMS client connection.
cds.messaging.services.<key>.connection.dedicated boolean false Determines, if this messaging service uses its own dedicated JMS client connection.
By default, JMS client connections to the same messaging broker are shared.
cds.messaging.services.<key>.connection.properties Map<String,String>   Properties passed to the JMS client connection.
The possible keys and values depend on the messaging service implementation.
cds.messaging.services.<key>.queue     Properties of the queue that is created for the messaging service.
cds.messaging.services.<key>.queue.name String   The name of the queue.
The queue may already exist with some custom configuration. In that case the queue is not recreated.
cds.messaging.services.<key>.queue.maxFailedAttempts Integer 0 Specifies the amount of times a message from the message broker is emitted on the messaging service, before it is silently acknowledged in case of continuous errors.
cds.messaging.services.<key>.queue.config Map<String,String>   Properties passed to the messaging broker when creating the queue.
The possible keys and values depend on the messaging service implementation.
cds.messaging.services.<key>.queue.subscriptions List<String>   A list of additional topic, that are subscribed on the queue.
By default event handler registrations should be used to trigger subscriptions.
This property is intended for purposes when subscriptions can not be inferred from event handler registrations.
cds.multiTenancy     Properties for multitenancy and extensibility.
cds.multiTenancy.endpoint     Properties of the subscription HTTP endpoints.
cds.multiTenancy.endpoint.path String /mt/v1.0/subscriptions The base-path of the adapter endpoint.
cds.multiTenancy.endpoint.enabled boolean true Determines, if it is enabled.
cds.multiTenancy.dataSource     Properties for the multi-tenant aware datasource.
cds.multiTenancy.dataSource.pool String hikari Pool to use for the multi-tenant aware datasource.
Possible values are: hikari, tomcat, atomikos.
cds.multiTenancy.serviceManager     Properties for the instance-manager / service-manager client.
cds.multiTenancy.serviceManager.timeout int 3600 The timeout for requests in seconds.
cds.multiTenancy.security     Properties for authorization.
cds.multiTenancy.security.subscriptionScope String mtcallback The scope by which the subscription endpoints are authorized.
cds.multiTenancy.security.deploymentScope String mtdeployment The scope by which the deployment endpoints are authorized.
cds.multiTenancy.sidecar     Properties for the MTX sidecar client.
cds.multiTenancy.sidecar.url String   The URL of the MTX sidecar.
Setting this property in combination with a present service-manager service binding activates the MTX features.
cds.multiTenancy.sidecar.cache     Properties for the sidecar CDS model and EDMX metadata caches.
cds.multiTenancy.sidecar.cache.maxSize int 20 The number of entries in the CDS model and EDMX metadata caches.
cds.multiTenancy.sidecar.cache.expirationTime int 600 The lifetime of an entry in seconds after the entry’s creation, the most recent replacement of its value, or its last access.
cds.multiTenancy.sidecar.cache.refreshTime int 60 The time in seconds after which a cached entry is refreshed.
cds.multiTenancy.appUi     Properties for the URL to the application’s UI endpoints.
cds.multiTenancy.appUi.url String   The URL to the application’s UI, used for the ‘Go to Application’ link.
cds.multiTenancy.appUi.tenantSeparator String   The separator for the tenant in the URL.
Possible values are: ., -.
cds.multiTenancy.healthCheck     Properties for health check of the multi-tenant aware datasource.
cds.multiTenancy.healthCheck.healthCheckStatement String   The statement that is used when executing a health check of the multi-tenant aware datasource.
cds.multiTenancy.healthCheck.intervalMillis long 10000 The time in milliseconds a health check result is cached and no further health-checks are performed.
cds.multiTenancy.healthCheck.enabled boolean true Determines, if it is enabled.
cds.application     Properties for application services.
cds.application.services     Properties for application services.
The key can be choosen arbitrarily and is mainly intended to be able to split configuration across multiple profiles.
cds.application.services.<key>.model String   The qualified name of the CDS service, which is the model definition of this application service.
It defaults to the name of the application service itself.
cds.application.services.<key>.name String   The name of the CDS definition.
cds.application.services.<key>.serve     Properties to configure how this service is served by protocol adapters.
cds.application.services.<key>.serve.ignore boolean false Determines, if the service is ignored by protocol adapters.
cds.locales     Properties for locale configurations.
cds.locales.normalization     Properties to configure how locales should be normalized.
cds.locales.normalization.defaults boolean true Determines, if the non-normalization include list, as described in the documentation, is applied.
cds.locales.normalization.includeList List<String>   The list of additional locales to add to the include list of non-normalized locales.
cds.errors     Properties for error handling.
cds.errors.extended boolean false Determines, if error messages are automatically extended with additional debug information (only for development).
cds.errors.stackMessages     Properties to configure how error messages from the framework are treated.
If turned off, only framework error messages, that are explicitly localized are returned.
Other errors are mapped to their plain HTTP error code representation.
cds.errors.stackMessages.enabled boolean true Determines, if it is enabled.
cds.drafts     Properties for draft-enabled entities.
cds.drafts.cancellationTimeout Duration PT15M The maximum amount of time, since the last change, an entity instance is locked by the user who is editing its draft version.
cds.drafts.deletionTimeout Duration PT720H The maximum amount of time a draft is kept, before it is garbage collected.
cds.drafts.gc     Properties to configure the automatic draft garbage collection.
cds.drafts.gc.interval Duration PT6H The interval, in which the automatic draft garbage collection is triggered.
cds.drafts.gc.enabled boolean true Determines, if it is enabled.
cds.query     Properties for augmentation of CQN queries.
cds.query.limit     Properties for server-driven paging.
cds.query.limit.default int 0 The default page size for server-driven paging.
Setting this property to 0 or -1 disables the default page size.
cds.query.limit.max int 1000 The maximum page size for server-driven paging.
Setting this property to 0 or -1 disables the maximum page size.
cds.query.implicitSorting     Properties for the implicit-sorting feature.
cds.query.implicitSorting.enabled boolean true Determines, if it is enabled.
Show/Hide Beta Features