smongiar opened a new pull request, #3076:
URL: https://github.com/apache/camel-kamelets/pull/3076
## Summary
Two bugs fixed in `salesforce-delete-sink` and `salesforce-update-sink`
kamelets.
## Bug 1: Wrong header name (`CamelSalesforceId` →
`CamelSalesforceSObjectId`)
`SalesforceEndpointConfig.SOBJECT_ID = "CamelSalesforceSObjectId"` is the
constant `AbstractRestProcessor.determineSObjectId()` looks for. Using the old
name `CamelSalesforceId` leaves the header unset, causing:
- **salesforce-delete-sink**: `Missing property CamelSalesforceSObjectId,
message body could not be converted to type java.lang.String`
- **salesforce-update-sink**: `URISyntaxException: Illegal character in
path` — the full JSON body is appended to the URL as the record ID instead of
the sObject ID
Also fixed: `removeHeader` names in `salesforce-update-sink` were using raw
field names (`sObjectId`, `sObjectName`) instead of the Camel header names.
## Bug 2: Compact YAML DSL notation (deprecated since Camel 4.4)
The shorthand form:
```yaml
- setHeader:
name: CamelSalesforceSObjectId
jsonpath: "$.sObjectId"
```
silently fails to wire the JSONPath expression at runtime in recent Camel
versions, producing the `YAML DSL compact notation detected` warning. Converted
to canonical form:
```yaml
- setHeader:
name: CamelSalesforceSObjectId
expression:
jsonpath:
expression: "$.sObjectId"
```
Same applied to the `transform` step in `salesforce-update-sink`.
## Test plan
- [ ] `SalesforceDeleteSinkKameletITCase` passes
- [ ] `SalesforceUpdateSinkKameletITCase` passes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]