You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Help]: Could not find a Task/Message for 84ced8e6-3705-41c6-9158-f2b880463a32 #995
I encountered a problem when integrating the A2A Java SDK 1.1.0.final with Spring Boot 4, and I cannot solve it myself. I am asking for help here.
Following the approach of A2A Java SDK for Spring Framework project, I attempted to migrate the helloworld project of the a2aproject to Spring Boot 4. Unfortunately, I encountered an error message when testing SendMessage.
Could not find a Task/Message for 84ced8e6-3705-41c6-9158-f2b880463a32
Tracing the program revealed that TaskManager.saveTask(...) was never called during runtime. Therefore, when ResultAggregator.consumeAndBreakOnInterrupt(...) attempted to call TaskManager.getTask(), the program failed because the task had never been stored in TaskStore.
I can't figure out where the problem is. It might be that I haven't understood some special configuration details in v1.0.0.final, leading to incorrect A2A server configuration, or the controller may have missed processing something when receiving messages. I sincerely request that an expert provide guidance and help me find the problem.
I've minimized my project, including only the code needed for SendMessage, so you can check for issues.
ServerConfig is used to assemble the A2A Java SDK server components.
Spring Boot recognizes @PostConstruct (and @Inject), so DefaultRequestHandler.initConfig() and MainEventBusProcessor.start() will be executed in this case.
Activity
guofengzh commentedon Jul 26, 2026
Based on the summary in #997, I adjusted the way Spring beans are constructed in
ServerConfig, then, the expected response was received.The change are:
DefaultRequestHandlerto construct an instance ofDefaultRequestHandler.MainEventBusProcessorbean, and then inject it into theDefaultRequestHandlerbean.That is, the following construct:
becomes:
Spring Boot recognizes
@PostConstruct(and@Inject), soDefaultRequestHandler.initConfig()andMainEventBusProcessor.start()will be executed in this case.Then, test using the following request:
{ "jsonrpc": "2.0", "id": "6e7bf51a-f364-42d7-a060-343da3cc4f43", "method": "SendMessage", "params": { "message": { "messageId": "messageId-1", "role": "ROLE_USER", "parts": [ { "text": "Can you check systems?" } ] } } }Response
200 OKResponse Body:
{ "error": null, "id": "6e7bf51a-f364-42d7-a060-343da3cc4f43", "jsonrpc": "2.0", "result": { "role": "ROLE_AGENT", "parts": [ { "text": "Hello World", "metadata": null } ], "messageId": "d062faba-39e6-4ac6-b891-9e0ba1363a69", "contextId": "c2c16e07-dfad-40f1-958c-41d336d4363e", "taskId": "d38c2bc5-7491-4920-a290-93582d21a9e0", "referenceTaskIds": null, "metadata": null, "extensions": null } }A success result was returned.
Hopefully, these new improvements will be helpful to your revisions.
Thanks for what you did.
fix(server): cover direct request handler wiring
fix(server): preserve task ids for emitted messages
guofengzh commentedon Jul 30, 2026
Everything is working fine. I'm closing this issue.
fix(server): start event bus processor for manual wiring
fix(server): cover direct request handler wiring
fix(server): start event bus processor for manual wiring