# A2A in Java: hands on Embabel

DevFeed: [A2A in Java: hands on Embabel](<https://devfeed.tech/articles/a2a-in-java-hands-on-embabel-22588.md>)

Original publisher: [Read original article](<https://medium.com/amex-gbt-technology/a2a-in-java-hands-on-embabel-c80c9f716f6f?source=rss----60a0578f4096---4>)

Author: Aneshka Goyal

Published: 2026-06-16T08:44:44Z

Content type: tutorial

Language: en

Sources: [Amex GBT Technology](<https://devfeed.tech/sources/amex-gbt-technology.md>)

Topics: [Embabel](<https://devfeed.tech/topics/embabel.md>), [A2A protocol](<https://devfeed.tech/topics/a2a-protocol.md>), [Java](<https://devfeed.tech/topics/java.md>), [Spring AI](<https://devfeed.tech/topics/spring-ai.md>), [Agent Framework](<https://devfeed.tech/topics/agent-framework.md>), [interoperability](<https://devfeed.tech/topics/interoperability.md>), [Artificial Intelligence](<https://devfeed.tech/topics/ai.md>), [Large Language Model](<https://devfeed.tech/topics/llm.md>)

Tags: [a2a](<https://devfeed.tech/tags/a2a.md>), [a2a-protocol](<https://devfeed.tech/tags/a2a-protocol.md>), [agent-framework](<https://devfeed.tech/tags/agent-framework.md>), [ai](<https://devfeed.tech/tags/ai.md>), [embabel](<https://devfeed.tech/tags/embabel.md>), [interoperability](<https://devfeed.tech/tags/interoperability.md>), [java](<https://devfeed.tech/tags/java.md>), [large-language-models-llms](<https://devfeed.tech/tags/large-language-models-llms.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>), [spring-ai](<https://devfeed.tech/tags/spring-ai.md>)

## AI overview

This hands-on article introduces A2A in Java and explores Embabel, a Java agent framework built on Spring AI. It explains how A2A enables interoperability among agents across languages, frameworks, vendors, and platforms, and describes Embabel's use of goal-oriented action planning with existing Java domain logic and structured code.

## Source excerpt

Part 1: What is Embabel? A2A, or Agent-to-Agent Protocol, is an open standard (now under the Linux Foundation) that provides a common language for diverse AI agents to communicate, collaborate, and share tasks, enabling interoperability across different frameworks, vendors, and platforms. You can read more about A2A here. A2A makes agents framework and tech stack agnostic, which means agents developed in Python will be able to connect to other agents in Java or any other programming language of choice (given we have A2A protocol compliance). We currently have ADK (Python) and other Python specific frameworks that simplify the development of A2A compliant agents (as you'll read in this blog). This initiative explores creating a comparable Java-specific framework to enable building A2A-compliant agentic applications in Java. Brief about Spring AI Before learning about Embabel, it's important to discuss and know about Spring AI which provides the foundation for Embabel framework. The Spring AI project aims to streamline the development of applications that incorporate artificial intelligence functionality without unnecessary complexity. This project draws inspiration from notable Python projects, such as LangChain and LlamaIndex, but Spring AI isn't a direct port of those projects. The project was founded with the belief that the next wave of generative AI applications will not only be for Python developers but ubiquitous across many programming languages. Spring AI can be used without Embabel (or any other high level framework like ADK java) to create agents and agentic applications. For more info around how to use Spring AI, check out Part 1 and Part 2. What is Embabel? Embabel is an agent framework built on Spring AI, designed to integrate Large Language Models (LLMs) with existing domain logic and structured code in Java applications. It utilizes a Goal-Oriented Action Planning (GOAP) mechanism to allow agents to dynamically determine the sequence of actions needed