Claus Ibsen created CAMEL-25746:
-----------------------------------

             Summary: camel-bean, camel-platform-http - the errors for a key 
read from a stream, JSON text or a List, and for a Map or List as the HTTP 
response, say what to do
                 Key: CAMEL-25746
                 URL: https://issues.apache.org/jira/browse/CAMEL-25746
             Project: Camel
          Issue Type: Improvement
          Components: camel-platform-http, camel-bean
            Reporter: Claus Ibsen
             Fix For: 4.24.0


In the overnight benchmark of Oct 17-18 2026 (ten runs of a local model on the 
example ladder), 3 of the 8 failed steps of the contract-first openapi example 
hit errors that name the problem but not the fix:

* "Key: qty not found in bean: ...ByteArrayInputStreamCache ... using OGNL path 
[[qty]]": a variable that holds the raw request body, because it was set before 
the body was unmarshalled.
* "Key: qty not found in bean: [\{sku=CAMEL-TSHIRT, qty=120\}, ...] of type: 
java.util.ArrayList": a key read from the whole list before an element was 
picked.
* "No type converter available to convert from type: java.util.ArrayList to the 
required type: java.io.InputStream": a List returned as the platform-http 
response.

Proposal: a short hint after the message, as CAMEL-25309 did for the http 
producer:
* A stream or bytes: the value is the message body as a stream, not a Map; 
unmarshal it first (for example with json), then read the key. A variable keeps 
the value it had when it was set.
* JSON text: unmarshal it first.
* A List: a List has no keys; pick an element first, such as [0][qty], or split 
the list.
* A Map or List as a platform-http response body: marshal it to JSON first 
(marshal: json), or set the body to the JSON text.

_Claude Code on behalf of davsclaus_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to