From 19bbe123445569f5d4e15a3633e80c5de086053b Mon Sep 17 00:00:00 2001 From: Stefan Henke Date: Tue, 31 Mar 2026 13:55:25 +0200 Subject: [PATCH 1/3] Update migration.md with property and API changes Added sections for adjusted, deprecated, and removed properties, as well as removed Java APIs in migration documentation. --- java/migration.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/java/migration.md b/java/migration.md index 6973a7e87..d020241fb 100644 --- a/java/migration.md +++ b/java/migration.md @@ -66,6 +66,38 @@ CAP Java 5.0 increased some minimum required versions: | Spring Boot | 4.0 | | XSUAA (BTP Security Library) | 4.0.0 | +### Adjusted Property Defaults + +Some property defaults have been adjusted: + +| Property | Old Value | New Value | Explanation | +| --- | --- | --- | --- | +| `abc` | false | true | Any description. | + +### Deprecated Properties + +The following properties have been deprecated and might be removed in a future major version: + +- `abd` + +The functionality provided by these properties is enabled by default and there is no reason to switch these off. + +### Removed Properties + +The following table gives an overview about the removed properties: + +| Removed Property | Replacement / Explanation | +| --- | --- | +| `abc` | Any description about replacement | + +### Removed Java APIs + +- Removed deprecated classes: + - `com.sap.cds.A`, use `B` instead + +- Removed deprecated methods: + - `com.sap.cds.ql.cqn.A.search(String term)`, use `searchTerm(CqnSearchTermPredicate)` instead + ## CAP Java 3.10 to CAP Java 4.0 { #three-to-four } ### New License From af94683dbc64fce59458e78e5df35348e40c6a43 Mon Sep 17 00:00:00 2001 From: Stefan Henke Date: Wed, 8 Apr 2026 16:44:34 +0200 Subject: [PATCH 2/3] Removed deprecated methods in UCL AssignEventContext (#2496) Added migration details for UCL methods and updated deprecated method replacements. --- java/migration.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/java/migration.md b/java/migration.md index d020241fb..1d9299ee0 100644 --- a/java/migration.md +++ b/java/migration.md @@ -48,6 +48,7 @@ Here, the *migration* `com.sap.cds.services.migrations.MigrateStatements` from C |Name |Description|Available since| |--------|-----------|---------------| |[com.sap.cds.services.migrations.MigrateStatements](../releases/2025/aug25#typed-query-results)|Migrates CQN statements to comply with typed Query API changes in 4.3.0.|4.3.0| +|com.sap.cds.services.recipes.UclMigration|Migrates deprecated UCL result getter and setter methods to the new API.|5.0.0| ## CAP Java 4.9 to CAP Java 5.0 (TBA) { #four-to-five } @@ -96,7 +97,8 @@ The following table gives an overview about the removed properties: - `com.sap.cds.A`, use `B` instead - Removed deprecated methods: - - `com.sap.cds.ql.cqn.A.search(String term)`, use `searchTerm(CqnSearchTermPredicate)` instead + - `com.sap.cds.feature.ucl.services.AssignEventContext.setUclResult(SpiiResult)`, use `setResult(SpiiResult)` instead. + - `com.sap.cds.feature.ucl.services.AssignEventContext.getUclResult()`, use `getResult()` instead. ## CAP Java 3.10 to CAP Java 4.0 { #three-to-four } From 2cd14331fe36d477aa5b68d573d5dca0bc36002a Mon Sep 17 00:00:00 2001 From: Robin Date: Wed, 15 Apr 2026 15:53:58 +0200 Subject: [PATCH 3/3] CAP Java 5.0: Document ServiceExceptionUtils removals in migration guide (#2481) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Summary - Adds 5 OpenRewrite recipes for `ServiceExceptionUtils` method removals to the Currently Released CAP Java Migrations table - Documents removed `ServiceExceptionUtils` methods and their replacements in the `Removed Java APIs` section of the CAP Java 4.9 → 5.0 migration guide ## Test plan - [ ] Verify recipe table links (`#service-exception-utils-removals`) resolve correctly - [ ] Verify removed method signatures and replacement calls are accurate --------- Co-authored-by: Stefan Henke --- java/migration.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/java/migration.md b/java/migration.md index 1d9299ee0..47d477d41 100644 --- a/java/migration.md +++ b/java/migration.md @@ -48,7 +48,9 @@ Here, the *migration* `com.sap.cds.services.migrations.MigrateStatements` from C |Name |Description|Available since| |--------|-----------|---------------| |[com.sap.cds.services.migrations.MigrateStatements](../releases/2025/aug25#typed-query-results)|Migrates CQN statements to comply with typed Query API changes in 4.3.0.|4.3.0| -|com.sap.cds.services.recipes.UclMigration|Migrates deprecated UCL result getter and setter methods to the new API.|5.0.0| +|[com.sap.cds.services.migrations.ServiceExceptionUtils](#removed-java-apis-4-to-5)|Replaces deprecated methods in `ServiceExceptionUtils`.|5.0.0| +|[com.sap.cds.services.migrations.MigrateSaasRegistryDependency](#removed-java-apis-4-to-5)|Replaces deprecated `SaasRegistryDependency` methods `setAppId`/`setAppName`/`getAppId`/`getAppName` with their `xsappname`-based replacements.|5.0.0| +|[com.sap.cds.services.recipes.UclMigration](#removed-java-apis-4-to-5)|Migrates deprecated UCL result getter and setter methods to the new API.|5.0.0| ## CAP Java 4.9 to CAP Java 5.0 (TBA) { #four-to-five } @@ -91,12 +93,18 @@ The following table gives an overview about the removed properties: | --- | --- | | `abc` | Any description about replacement | -### Removed Java APIs - -- Removed deprecated classes: - - `com.sap.cds.A`, use `B` instead +### Removed Java APIs { #removed-java-apis-4-to-5 } - Removed deprecated methods: + - `com.sap.cds.services.ServiceExceptionUtils.getLocalizedMessage(String code, Object[] args, Locale locale)` → `getLocalizedMessage(code, args, locale, true)` (pass `true` for `errorStatusFallback` to keep the previous behavior) + - `com.sap.cds.services.ServiceExceptionUtils.getMessageTarget(String target)` → `MessageTarget.create(target)` + - `com.sap.cds.services.ServiceExceptionUtils.getMessageTarget(String parameter, Function, Object> path)` → `MessageTarget.create(parameter, path)` + - `com.sap.cds.services.ServiceExceptionUtils.getMessageTarget(String parameter, Class type, Function path)` → `MessageTarget.create(parameter, type, path)` + - `com.sap.cds.services.ServiceExceptionUtils.getMessageTarget(Path path, CdsElement element)` → `MessageTarget.create(path, element)` + - `com.sap.cds.services.mt.SaaSRegistryDependency.getAppId()` → `getXsappname()` + - `com.sap.cds.services.mt.SaaSRegistryDependency.setAppId(String appId)` → `setXsappname(appId)` + - `com.sap.cds.services.mt.SaaSRegistryDependency.getAppName()` → `getXsappname()` + - `com.sap.cds.services.mt.SaaSRegistryDependency.setAppName(String appName)` → `setXsappname(appName)` - `com.sap.cds.feature.ucl.services.AssignEventContext.setUclResult(SpiiResult)`, use `setResult(SpiiResult)` instead. - `com.sap.cds.feature.ucl.services.AssignEventContext.getUclResult()`, use `getResult()` instead.