Croway opened a new pull request, #1925:
URL: https://github.com/apache/camel-spring-boot/pull/1925

   ## Summary
   
   `camel-a2a` has been in Camel core since 4.21.0 (CAMEL-23063) but never got 
a Spring Boot starter. This PR adds `camel-a2a-starter`, generated with 
`./starter-create a2a`, together with the regenerated docs page, nav entry, 
Spring Boot catalog entry and both BOM entries.
   
   The component has no Spring Boot specific requirements: its dependencies are 
Camel core modules, Jackson 2 and httpclient5, all already managed by the 
dependencies BOM, and the `a2aSubTask` DSL step lives in `camel-core-model`. 
The consumer needs a `RestConsumerFactory` at runtime, which on Spring Boot is 
`camel-platform-http-starter`; as with other REST-based starters, users add it 
themselves.
   
   ## Test
   
   `A2AStarterSmokeTest` runs the A2A consumer on the servlet-based 
platform-http engine (`camel-platform-http-starter` + `spring-boot-starter-web` 
in test scope) and checks:
   
   - `GET /.well-known/agent-card.json`
   - REST `POST /message:send` (the custom-method colon path works on Spring 
MVC, unlike the Vert.x router collision documented in the component docs)
   - JSON-RPC `POST /` on a second endpoint with 
`protocolBinding=jsonrpc&basePath=/rpc`
   - `POST /message:stream` against a route with a 1.5s delay, asserting that 
the first SSE bytes arrive before the delay ends and that the stream ends with 
`TASK_STATE_COMPLETED`
   
   ## Notes for users (behavioural differences vs Vert.x)
   
   - Spring MVC enforces the declared `consumes` because 
`camel.component.platform-http.server-request-validation` defaults to `true`, 
so REST-binding clients must send `Content-Type: application/a2a+json`; plain 
`application/json` gets a 415.
   - Each open SSE stream holds a servlet thread for its lifetime.
   
   _Claude Code on behalf of Federico Mariani_
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   
   https://claude.ai/code/session_01HNayxoB3xa9zbVDM84QiS5
   


-- 
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]

Reply via email to