[
https://issues.apache.org/jira/browse/CAMEL-26266?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrea Cosentino reassigned CAMEL-26266:
----------------------------------------
Assignee: Andrea Cosentino
> camel-huaweicloud-functiongraph - a function result without a top-level body
> field leaves the body null, and a JSON body as bytes or a JSON array fails
> -------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-26266
> URL: https://issues.apache.org/jira/browse/CAMEL-26266
> Project: Camel
> Issue Type: Bug
> Reporter: Claus Ibsen
> Assignee: Andrea Cosentino
> Priority: Major
> Fix For: 4.24.0
>
>
> Found while adding the catalog body types of hwcloud-functiongraph
> (CAMEL-24961, PR #28406).
> h4. 1. A result without a body field is lost
> {{FunctionGraphProducer.invokeFunction}} (main 2a465aa4814c, lines 107-109)
> sets the body to the {{body}} field of the result only, so a function that
> returns any other JSON (no top-level {{body}}) leaves the message body null,
> and the result is lost. Checked on 4.24.0-SNAPSHOT with a mock SDK client set
> on the endpoint.
> Proposed: keep the whole result when it has no {{body}} field (or add an
> option to return the whole result).
> h4. 2. A JSON body as bytes or stream, or a JSON array, fails
> Lines 76-89 accept a Map or a String with a JSON object only; byte[]/stream
> JSON and a JSON array fail "Exchange body is mandatory and should be a valid
> Map or JSON string". Checked on 4.24.0-SNAPSHOT with a mock SDK client set on
> the endpoint.
> Proposed: convert other bodies to String first, and accept any JSON value the
> function takes.
> _Claude Code on behalf of davsclaus_
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)