Skip to content

Commit dc49965

Browse files
authored
Merge branch 'main' into wasm-agent
2 parents f212bde + a77546a commit dc49965

File tree

4 files changed

+30
-34
lines changed

4 files changed

+30
-34
lines changed

_posts/2025-06-27-a2a-project-launches-java-sdk.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ complex workflows between multiple agents. You can find more details
229229
about task management and many other features in the *https://github.com/a2aproject/a2a-java[A2A Java SDK]* repository's.
230230

231231
You just want more code? Are you interested to see interoperability in action? Explore our
232-
https://github.com/a2aproject/a2a-samples/tree/main/samples/multi_language/python_and_java_multiagent[multi-language
232+
https://github.com/a2aproject/a2a-samples/tree/main/samples/python/hosts/weather_and_airbnb_planner[multi-language
233233
sample implementation,] which demonstrates how Python and Java
234234
agents collaborate seamlessly. See this picture for a bird-eye overview,
235235
and checkout the code for more insights
@@ -274,7 +274,7 @@ Ready to dive in? Here’s your roadmap:
274274
https://github.com/a2aproject/a2a-java[github.com/a2aproject/a2a-java]
275275
to examine the implementation +
276276
. *Study Real Examples*: Check out the
277-
https://github.com/a2aproject/a2a-samples/tree/main/samples/multi_language/python_and_java_multiagent[multi-language
277+
https://github.com/a2aproject/a2a-samples/tree/main/samples/python/hosts/weather_and_airbnb_planner[multi-language
278278
samples] to see interoperability in action +
279279
. *Join the Community*: Connect with fellow developers in the A2A
280280
ecosystem +

_posts/2025-07-09-quarkus-and-a2a-java-sdk.adoc

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ $ mvn quarkus:dev
230230

231231
We've gone from a Quarkus LangChain4j AI service to an A2A server agent in just a few steps!
232232

233-
The source code for this example is available https://github.com/a2aproject/a2a-samples/tree/main/samples/multi_language/python_and_java_multiagent/weather_agent[here].
233+
The source code for this example is available https://github.com/a2aproject/a2a-samples/tree/main/samples/java/agents/weather_mcp[here].
234234

235235
== Validating our A2A Server Agent Using the A2A Inspector
236236

@@ -254,13 +254,13 @@ image::multiagent-java-python.png[scaledwidth=100%]
254254

255255
This is a multi-agent example where a host agent delegates requests to two different A2A server agents, an Airbnb agent and our Weather agent, based on the user's question. Under the hood, the host agent makes use of each agent's agent card to determine the capabilities of each agent and uses an LLM to determine which agent to delegate the request to based on their capabilities.
256256

257-
The https://github.com/a2aproject/a2a-samples/tree/main/samples/multi_language/python_and_java_multiagent/airbnb_agent[Airbnb agent] is a Python agent that's implemented using LangGraph and makes use of the A2A Python SDK.
257+
The https://github.com/a2aproject/a2a-samples/tree/main/samples/python/agents/airbnb_planner_multiagent/airbnb_agent[Airbnb agent] is a Python agent that's implemented using LangGraph and makes use of the A2A Python SDK.
258258

259-
The https://github.com/a2aproject/a2a-samples/tree/main/samples/multi_language/python_and_java_multiagent/weather_agent[Weather agent] is our Java agent that's implemented using Quarkus LangChain4j and makes use of the A2A Java SDK.
259+
The https://github.com/a2aproject/a2a-samples/tree/main/samples/java/agents/weather_mcp[Weather agent] is our Java agent that's implemented using Quarkus LangChain4j and makes use of the A2A Java SDK.
260260

261261
Notice that the host agent uses A2A clients written in Python to communicate with the server agents. It's also possible to use an https://github.com/a2aproject/a2a-java?tab=readme-ov-file#a2a-client[A2A client] written in Java using our A2A Java SDK.
262262

263-
The complete source code for this example is available https://github.com/a2aproject/a2a-samples/tree/main/samples/multi_language/python_and_java_multiagent[here]. To experiment with this multi-agent example, try sending different types of questions to the host agent, for example:
263+
The complete source code for this example is available https://github.com/a2aproject/a2a-samples/tree/main/samples/python/hosts/weather_and_airbnb_planner[here]. To experiment with this multi-agent example, try sending different types of questions to the host agent, for example:
264264

265265
* What's the weather in New York, NY?
266266
* Find me a room in LA, CA, July 7-9, 2 adults

_versions/main/guides/_attributes.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
:graalvm-flavor: jdk-21
1111
:mandrel-flavor: jdk-21
1212
:surefire-version: 3.5.4
13-
:gradle-version: 9.1.0
13+
:gradle-version: 9.2.1
1414
:elasticsearch-version: 9.1.5
1515
:elasticsearch-image: docker.io/elastic/elasticsearch:9.1.5
1616
:opensearch-image: docker.io/opensearchproject/opensearch:3.1.0

_versions/main/guides/security-oidc-bearer-token-authentication-tutorial.adoc

Lines changed: 23 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -198,14 +198,33 @@ For more information, see the <<bearer-token-tutorial-keycloak-dev-mode>> sectio
198198
For more information, see the Quarkus xref:security-oidc-configuration-properties-reference.adoc[OpenID Connect (OIDC) configuration properties] guide.
199199

200200

201-
== Start and configure the Keycloak server
201+
[[bearer-token-tutorial-keycloak-dev-mode]]
202+
== Run the application in dev mode
202203

203-
. Put the link:{quickstarts-tree-url}/security-openid-connect-quickstart/config/quarkus-realm.json[realm configuration file] on the classpath (`target/classes` directory) so that it gets imported automatically when running in dev mode.
204-
You do not need to do this if you have already built a link:{quickstarts-tree-url}/security-openid-connect-quickstart[complete solution], in which case, this realm file is added to the classpath during the build.
204+
Put the link:{quickstarts-tree-url}/security-openid-connect-quickstart/config/quarkus-realm.json[realm configuration file] in the `src/main/resources` application folder so that it gets copied to the classpath and imported automatically to Keycloak. You do not need to do this if you have already built a link:{quickstarts-tree-url}/security-openid-connect-quickstart[complete solution], in which case, this realm file is added to the classpath during the build.
205+
206+
. To run the application in dev mode, run the following commands:
205207
+
208+
====
209+
include::{includes}/devtools/dev.adoc[]
210+
====
211+
* xref:security-openid-connect-dev-services.adoc[Dev Services for Keycloak] will start a Keycloak container and import a `quarkus-realm.json`.
212+
. Open a xref:dev-ui.adoc[Dev UI], which you can find at http://localhost:8080/q/dev-ui[/q/dev-ui].
213+
Then, in an `OpenID Connect` card, click the `Keycloak provider` link .
214+
. When prompted to log in to a `Single Page Application` provided by `OpenID Connect Dev UI`, do the following steps:
215+
216+
* Log in as `alice` (password: `alice`), who has a `user` role.
217+
** Accessing `/api/admin` returns a `403` status code.
218+
** Accessing `/api/users/me` returns a `200` status code.
219+
* Log out and log in again as `admin` (password: `admin`), who has both `admin` and `user` roles.
220+
** Accessing `/api/admin` returns a `200` status code.
221+
** Accessing `/api/users/me` returns a `200` status code.
222+
223+
== Start and configure the Keycloak server
224+
206225
[NOTE]
207226
====
208-
Do not start the Keycloak server when you run the application in dev mode; `Dev Services for Keycloak` will start a container.
227+
Do not start the Keycloak server when you <<bearer-token-tutorial-keycloak-dev-mode,run the application in dev mode>>; `Dev Services for Keycloak` will start and configure a container.
209228
For more information, see the <<bearer-token-tutorial-keycloak-dev-mode>> section.
210229
====
211230
+
@@ -245,31 +264,8 @@ For more information, see the xref:security-keycloak-admin-client.adoc[Quarkus K
245264
endif::no-quarkus-keycloak-admin-client[]
246265

247266

248-
249-
[[bearer-token-tutorial-keycloak-dev-mode]]
250-
== Run the application in dev mode
251-
252-
. To run the application in dev mode, run the following commands:
253-
+
254-
====
255-
include::{includes}/devtools/dev.adoc[]
256-
====
257-
* xref:security-openid-connect-dev-services.adoc[Dev Services for Keycloak] will start a Keycloak container and import a `quarkus-realm.json`.
258-
. Open a xref:dev-ui.adoc[Dev UI], which you can find at http://localhost:8080/q/dev-ui[/q/dev-ui].
259-
Then, in an `OpenID Connect` card, click the `Keycloak provider` link .
260-
. When prompted to log in to a `Single Page Application` provided by `OpenID Connect Dev UI`, do the following steps:
261-
262-
* Log in as `alice` (password: `alice`), who has a `user` role.
263-
** Accessing `/api/admin` returns a `403` status code.
264-
** Accessing `/api/users/me` returns a `200` status code.
265-
* Log out and log in again as `admin` (password: `admin`), who has both `admin` and `user` roles.
266-
** Accessing `/api/admin` returns a `200` status code.
267-
** Accessing `/api/users/me` returns a `200` status code.
268-
269267
== Run the Application in JVM mode
270268

271-
When you are done with dev mode, you can run the application as a standard Java application.
272-
273269
. Compile the application:
274270
+
275271
====

0 commit comments

Comments
 (0)