{"id":26792,"date":"2026-05-04T14:52:16","date_gmt":"2026-05-04T14:52:16","guid":{"rendered":"https:\/\/www.europesays.com\/ai\/26792\/"},"modified":"2026-05-04T14:52:16","modified_gmt":"2026-05-04T14:52:16","slug":"java-news-roundup-openjdk-jeps-glassfish-spring-ai-jreleaser-a2a-java-sdk-google-adk-gradle","status":"publish","type":"post","link":"https:\/\/www.europesays.com\/ai\/26792\/","title":{"rendered":"Java News Roundup: OpenJDK JEPs, GlassFish, Spring AI, JReleaser, A2A Java SDK, Google ADK, Gradle"},"content":{"rendered":"<p>This week&#8217;s Java roundup for April 27th, 2026, features news highlighting: OpenJDK JEPs for JDK 27; the fifth milestone release of Spring AI 2.0; the second milestone release of GlassFish 9.0; point releases of Quarkus, JReleaser, Gradle, LangChain4j and Google ADK for Java; the second beta release of Hardwood; and the first beta release of A2A Java SDK 1.0.<\/p>\n<p>OpenJDK<\/p>\n<p>After its review had concluded, JEP 532, <a href=\"https:\/\/openjdk.org\/jeps\/532\" rel=\"nofollow noopener\" target=\"_blank\">Primitive Types in Patterns, instanceof, and switch (Fifth Preview)<\/a>, has been <a href=\"https:\/\/mail.openjdk.org\/archives\/list\/jdk-dev@openjdk.org\/thread\/N4TBHAGN3CLPJHGUQDAQU7IBTIINGTLK\/\" rel=\"nofollow noopener\" target=\"_blank\">elevated<\/a> from Proposed to Target to Targeted for JDK 27. This JEP proposes a fifth preview, without change, after four rounds of preview delivered in JDK 23 through JDK 26. This feature enhances pattern matching by allowing primitive types in all pattern contexts, and extending the instanceof and switch constructs to work with all primitive types.<\/p>\n<p>JEP 533, <a href=\"https:\/\/openjdk.org\/jeps\/533\" rel=\"nofollow noopener\" target=\"_blank\">Structured Concurrency (Seventh Preview)<\/a>, has been <a href=\"https:\/\/mail.openjdk.org\/archives\/list\/jdk-dev@openjdk.org\/thread\/A7AWZ7ZRK6HM4EYD5M5DM4A34XPOILCC\/\" rel=\"nofollow noopener\" target=\"_blank\">elevated<\/a> from Candidate to Proposed to Target for JDK 27. This JEP proposes a seventh preview, with minor changes, after six rounds of preview delivered in JDK 21 through JDK 26 and two rounds of incubator delivered in JDK 19 through JDK 20. This feature simplifies concurrent programming by introducing structured concurrency to &#8220;treat groups of related tasks running in different threads as a single unit of work, thereby streamlining error handling and cancellation, improving reliability, and enhancing observability.&#8221; The review is expected to conclude on May 5, 2026.<\/p>\n<p>JEP 531, <a href=\"https:\/\/openjdk.org\/jeps\/531\" rel=\"nofollow noopener\" target=\"_blank\">Lazy Constants (Third Preview)<\/a>, has been <a href=\"https:\/\/mail.openjdk.org\/archives\/list\/jdk-dev@openjdk.org\/thread\/TIR5L3YDYYFACRERF2OVNJ3SQFAE52XE\/\" rel=\"nofollow noopener\" target=\"_blank\">elevated<\/a> from Candidate to Proposed to Target for JDK 27. Formerly known as StableValues, this feature proposes a third preview, with two changes, after two rounds of preview delivered in the upcoming release of JDK 26 and JDK 25. The changes include: removal of the methods, isInitialized() and orElse(), from the <a href=\"https:\/\/download.java.net\/java\/early_access\/jdk26\/docs\/api\/java.base\/java\/lang\/LazyConstant.html\" rel=\"nofollow noopener\" target=\"_blank\">LazyConstant<\/a> interface, as they do not align with the design goals of this feature; and a new factory method, ofLazy(), that can create a stable, pre-defined elements for all three Java collection types, namely: List, Set and Map. The review is expected to conclude on May 6, 2026.<\/p>\n<p>JEP 536, <a href=\"https:\/\/openjdk.org\/jeps\/536\" rel=\"nofollow noopener\" target=\"_blank\">JFR In-Process Data Redaction<\/a>, has been <a href=\"https:\/\/mail.openjdk.org\/archives\/list\/jdk-dev@openjdk.org\/thread\/EBK5L66WSFBTJLZD7QZPDNZSODMETM5C\/\" rel=\"nofollow noopener\" target=\"_blank\">elevated<\/a> from its JEP Draft 8372760 to Candidate status. This JEP proposes to enhance the JDK Flight Recorder to redact sensitive information before the JFR completes its recording. This data may include command-line arguments, initial values of environment variables and system properties.<\/p>\n<p>JDK 27<\/p>\n<p><a href=\"https:\/\/github.com\/openjdk\/jdk\/releases\/tag\/jdk-27%2B20\" rel=\"nofollow noopener\" target=\"_blank\">Build 20<\/a> of the JDK 27 <a href=\"https:\/\/jdk.java.net\/27\/\" rel=\"nofollow noopener\" target=\"_blank\">early-access builds<\/a> was made available this past week featuring <a href=\"https:\/\/github.com\/openjdk\/jdk\/compare\/jdk-27%2B19...jdk-27%2B20\" rel=\"nofollow noopener\" target=\"_blank\">updates<\/a> from Build 19 that include fixes for various <a href=\"https:\/\/bugs.openjdk.org\/issues\/?jql=project%20%3D%20JDK%20AND%20fixversion%20%3D%2027%20and%20%22resolved%20in%20build%22%20%3D%20b20%20order%20by%20component%2C%20subcomponent\" rel=\"nofollow noopener\" target=\"_blank\">issues<\/a>. Further details on this release may be found in the <a href=\"https:\/\/jdk.java.net\/27\/release-notes\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>For <a href=\"https:\/\/openjdk.org\/projects\/jdk\/27\/\" rel=\"nofollow noopener\" target=\"_blank\">JDK 27<\/a>, developers are encouraged to report bugs via the <a href=\"https:\/\/bugreport.java.com\/bugreport\/\" rel=\"nofollow noopener\" target=\"_blank\">Java Bug Database<\/a>.<\/p>\n<p>GlassFish<\/p>\n<p>The <a href=\"https:\/\/x.com\/OmniFishEE\/status\/2050875104997912960\" rel=\"nofollow\">second milestone release<\/a> of <a href=\"https:\/\/glassfish.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Eclipse GlassFish<\/a> 9.0.0, delivers bug fixes, documentation improvements, dependency upgrades and new features such as: a minimal version of JDK 21 with support for JDK 25; implementations of the <a href=\"https:\/\/jakarta.ee\/specifications\/security\/5.0\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Security 5.0-M2<\/a>, <a href=\"https:\/\/jakarta.ee\/specifications\/faces\/5.0\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Faces 5.0-M2<\/a> and <a href=\"https:\/\/jakarta.ee\/specifications\/cdi\/5.0\/\" rel=\"nofollow noopener\" target=\"_blank\">Jakarta Contexts and Dependency Injection 5.0-M1<\/a> specifications; and a new implementation of the <a href=\"https:\/\/datatracker.ietf.org\/doc\/html\/rfc7519\" rel=\"nofollow noopener\" target=\"_blank\">JSON Web Token<\/a> (JWT) specification with Jakarta Security and <a href=\"https:\/\/projects.eclipse.org\/projects\/ee4j.soteria\" rel=\"nofollow noopener\" target=\"_blank\">Eclipse Soteria<\/a>. More details on this release may be found in the <a href=\"https:\/\/github.com\/eclipse-ee4j\/glassfish\/releases\/tag\/9.0.0-M2\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Spring Framework<\/p>\n<p>The <a href=\"https:\/\/spring.io\/blog\/2026\/04\/27\/spring-ai-1-0-6-1-1-5-2-0-0-M5-available-now\" rel=\"nofollow noopener\" target=\"_blank\">fifth milestone release<\/a> of <a href=\"https:\/\/spring.io\/projects\/spring-ai\" rel=\"nofollow noopener\" target=\"_blank\">Spring AI<\/a> 2.0.0 ships with bug fixes, documentation improvements, dependency upgrades and new features such as: custom implementations of the <a href=\"https:\/\/docs.spring.io\/spring-ai\/docs\/2.0.0-M5\/api\/org\/springframework\/ai\/converter\/StructuredOutputConverter.html\" rel=\"nofollow noopener\" target=\"_blank\">StructuredOutputConverter<\/a> interface that may now participate in the native structured output pipeline for improved flexibility; and a new method,<\/p>\n<p>isConversationHistoryEnabled(), added to the <a href=\"https:\/\/docs.spring.io\/spring-ai\/docs\/2.0.0-M5\/api\/org\/springframework\/ai\/chat\/client\/advisor\/ToolCallAdvisor.Builder.html\" rel=\"nofollow noopener\" target=\"_blank\">ToolCallAdvisor.Builder<\/a> class that returns whether the internal conversationHistoryEnabled attribute is enabled. Further details on this release, including breaking changes, may be found in the <a href=\"https:\/\/github.com\/spring-projects\/spring-ai\/releases\/tag\/v2.0.0-M5\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Quarkus<\/p>\n<p>The <a href=\"https:\/\/quarkus.io\/blog\/quarkus-3-35-released\/\" rel=\"nofollow noopener\" target=\"_blank\">release<\/a> of <a href=\"https:\/\/quarkus.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Quarkus<\/a> 3.35.0 provides bug fixes, dependency upgrades and new features such as: an experimental build-time dependency &#8220;tree shaker&#8221; that identifies and excludes unused classes from runtime dependencies to reduce application JAR sizes; and a new <a href=\"https:\/\/quarkus.io\/extensions\/io.quarkus\/quarkus-reactive-transactions\/\" rel=\"nofollow noopener\" target=\"_blank\">Reactive Transactions<\/a> extension that enables the Spring Framework <a href=\"https:\/\/docs.spring.io\/spring-framework\/docs\/7.0.7\/javadoc-api\/org\/springframework\/transaction\/annotation\/Transactional.html\" rel=\"nofollow noopener\" target=\"_blank\">@Transactional<\/a> annotation to support Hibernate Reactive. More details on this release may be found in the release notes for <a href=\"https:\/\/github.com\/quarkusio\/quarkus\/releases\/tag\/3.35.1\" rel=\"nofollow noopener\" target=\"_blank\">version 3.35.1<\/a> and <a href=\"https:\/\/github.com\/quarkusio\/quarkus\/releases\/tag\/3.35.0\" rel=\"nofollow noopener\" target=\"_blank\">version 3.35.0<\/a>.<\/p>\n<p>JReleaser<\/p>\n<p>Version 1.24.0 of <a href=\"https:\/\/jreleaser.org\/\" rel=\"nofollow noopener\" target=\"_blank\">JReleaser<\/a>, a Java utility that streamlines creating project releases, has been <a href=\"https:\/\/andresalmiray.com\/jreleaser-1-24-0-has-been-released\/\" rel=\"nofollow noopener\" target=\"_blank\">released<\/a> with bug fixes, documentation improvements, dependency upgrades and new features such as: support for <a href=\"https:\/\/zernio.com\/\" rel=\"nofollow noopener\" target=\"_blank\">Zernio<\/a> added to the list of <a href=\"https:\/\/jreleaser.org\/guide\/latest\/reference\/announce\/index.html\" rel=\"nofollow noopener\" target=\"_blank\">announcers<\/a>; and the addition of a reproducible flag to configure when JReleaser should output consistent content. Further details on this release may be found in the <a href=\"https:\/\/github.com\/jreleaser\/jreleaser\/releases\/tag\/v1.24.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>LangChain4j<\/p>\n<p>The formal release (along with the twenty-fourth beta release) of <a href=\"https:\/\/github.com\/langchain4j\/langchain4j\/blob\/main\/README.md\" rel=\"nofollow noopener\" target=\"_blank\">LangChain4j<\/a> 1.14.0 delivers bug fixes, dependency upgrades and new features such as: a new attribute, IMMEDIATE_IF_LAST, added to the <a href=\"https:\/\/github.com\/langchain4j\/langchain4j\/blob\/main\/langchain4j-core\/src\/main\/java\/dev\/langchain4j\/agent\/tool\/ReturnBehavior.java\" rel=\"nofollow noopener\" target=\"_blank\">ReturnBehavior<\/a> enum that returns an execution loop result from an AI service when this tool is positioned last in the LLM response; and a new <a href=\"https:\/\/github.com\/langchain4j\/langchain4j\/blob\/main\/langchain4j-open-ai-official\/src\/main\/java\/dev\/langchain4j\/model\/openaiofficial\/OpenAiOfficialResponsesChatModel.java\" rel=\"nofollow noopener\" target=\"_blank\">OpenAiOfficialResponsesChatModel<\/a> class to align with the existing <a href=\"https:\/\/github.com\/langchain4j\/langchain4j\/blob\/main\/langchain4j-open-ai-official\/src\/main\/java\/dev\/langchain4j\/model\/openaiofficial\/OpenAiOfficialResponsesStreamingChatModel.java\" rel=\"nofollow noopener\" target=\"_blank\">OpenAiOfficialResponsesStreamingChatModel<\/a> class for use with the OpenAI <a href=\"https:\/\/github.com\/openai\/openai-java\/tree\/main\/openai-java-core\/src\/main\/kotlin\/com\/openai\/models\/responses\" rel=\"nofollow noopener\" target=\"_blank\">Responses<\/a> API. More details on this release may be found in the <a href=\"https:\/\/github.com\/langchain4j\/langchain4j\/releases\/tag\/1.14.0\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Micronaut<\/p>\n<p>The Micronaut Foundation has provided a <a href=\"https:\/\/micronaut.io\/2026\/04\/27\/micronaut-framework-5-0-with-java-25-baseline\/\" rel=\"nofollow noopener\" target=\"_blank\">preview<\/a> of the upcoming release of <a href=\"https:\/\/micronaut.io\/\" rel=\"nofollow noopener\" target=\"_blank\">Micronaut Framework<\/a> 5.0, scheduled for 2Q2026, that will feature: JDK 25 as a baseline; support for cloud vendors that have migrated, or preparing to migrate, to JDK 25; performance improvements; and updated code examples in the <a href=\"https:\/\/guides.micronaut.io\/latest\/index.html\" rel=\"nofollow noopener\" target=\"_blank\">Micronaut Guides<\/a> and <a href=\"https:\/\/docs.micronaut.io\/\" rel=\"nofollow noopener\" target=\"_blank\">documentation<\/a>. Additional blog posts describe some of the various features such as: support for <a href=\"https:\/\/micronaut.io\/2026\/04\/28\/micronaut-framework-5-0-supports-kotlin-2-3\/\" rel=\"nofollow noopener\" target=\"_blank\">Kotlin 2.3<\/a>, <a href=\"https:\/\/micronaut.io\/2026\/04\/28\/micronaut-framework-5-0-supports-apache-groovy-5\/\" rel=\"nofollow noopener\" target=\"_blank\">Groovy 5.0<\/a> and <a href=\"https:\/\/micronaut.io\/2026\/05\/01\/micronaut-framework-5-with-jackson-3\/\" rel=\"nofollow noopener\" target=\"_blank\">Jackson 3.0<\/a>; and adoption of <a href=\"https:\/\/micronaut.io\/2026\/05\/02\/micronaut-5-adoption-of-the-jspecify-nullability-annotations\/\" rel=\"nofollow noopener\" target=\"_blank\">JSpecify<\/a>. Micronaut 5.0 will also drop support for <a href=\"https:\/\/micronaut.io\/2026\/04\/30\/micronaut-framework-5-0-drops-support-for-rxjava-2\/\" rel=\"nofollow noopener\" target=\"_blank\">RxJava 2<\/a>.<\/p>\n<p>Gradle<\/p>\n<p>The <a href=\"https:\/\/github.com\/gradle\/gradle\/releases\/tag\/v9.5.0\" rel=\"nofollow noopener\" target=\"_blank\">GA release<\/a> of Gradle 9.5.0 ships with notable changes such as: improvements to <a href=\"https:\/\/docs.gradle.org\/9.5.0-rc-1\/userguide\/more_about_tasks.html\" rel=\"nofollow noopener\" target=\"_blank\">Gradle Task<\/a> failure diagnostics and reporting that now include provenance information and clearer logging when the client JVM is incompatible; and improvements to <a href=\"https:\/\/docs.gradle.org\/9.5.0-rc-1\/userguide\/getting_started_dev.html\" rel=\"nofollow noopener\" target=\"_blank\">build authoring<\/a> with a new disallowChanges() method, added to <a href=\"https:\/\/docs.gradle.org\/9.5.0-rc-1\/javadoc\/org\/gradle\/api\/DomainObjectCollection.html\" rel=\"nofollow noopener\" target=\"_blank\">DomainObjectCollection<\/a> interface, such that elements can no longer be added to or removed from the collection. Further details on this release may be found in the <a href=\"https:\/\/docs.gradle.org\/9.5.0\/release-notes.html\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n<p>Agent2Agent Java SDK<\/p>\n<p>The <a href=\"https:\/\/quarkus.io\/blog\/a2a-java-sdk-1-0-0-beta1-released\/\" rel=\"nofollow noopener\" target=\"_blank\">first beta release<\/a> of <a href=\"https:\/\/github.com\/a2aproject\/a2a-java\/blob\/main\/README.md\" rel=\"nofollow noopener\" target=\"_blank\">Agent2Agent Java SDK<\/a> 1.0.0, a Java library that implements the <a href=\"https:\/\/a2aproject.github.io\/A2A\/latest\/\" rel=\"nofollow noopener\" target=\"_blank\">Agent2Agent Protocol<\/a> (A2A) for running agentic applications as A2AServers. A collaboration between the Quarkus and WildFly teams, this new version provides bug fixes and notable changes such as: support for the <a href=\"https:\/\/www.jsonrpc.org\/\" rel=\"nofollow noopener\" target=\"_blank\">JSON-RPC<\/a>, <a href=\"https:\/\/grpc.io\/\" rel=\"nofollow noopener\" target=\"_blank\">gRPC<\/a> and HTTP+JSON\/REST transport protocols; use of the <a href=\"https:\/\/github.com\/a2aproject\/a2a-java\/blob\/main\/http-client\/src\/main\/java\/org\/a2aproject\/sdk\/client\/http\/JdkA2AHttpClient.java\" rel=\"nofollow noopener\" target=\"_blank\">JdkA2AHttpClient<\/a> class as a default for a more flexible HTTP client support; and structured error codes with details. More details on this release may be found in the <a href=\"https:\/\/github.com\/a2aproject\/a2a-java\/releases\/tag\/1.0.0.Beta1\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a> and this <a href=\"https:\/\/medium.com\/google-cloud\/a2a-java-sdk-1-0-0-beta1-released-e83c414b34cc\" rel=\"nofollow noopener\" target=\"_blank\">Medium<\/a> post.<\/p>\n<p>Google Agent Development Kit<\/p>\n<p>The release of <a href=\"https:\/\/adk.dev\/get-started\/java\/\" rel=\"nofollow noopener\" target=\"_blank\">Agent Development Kit (ADK) for Java<\/a> 1.2.0 delivers bug fixes and new features such as: new custom telemetry headers added to the Google Cloud <a href=\"https:\/\/github.com\/googleapis\/java-bigquery\/blob\/main\/google-cloud-bigquery\/src\/main\/java\/com\/google\/cloud\/bigquery\/BigQuery.java\" rel=\"nofollow noopener\" target=\"_blank\">BigQuery<\/a> interface; and the <a href=\"https:\/\/github.com\/google\/adk-java\/blob\/main\/core\/src\/main\/java\/com\/google\/adk\/tools\/mcp\/McpSessionManager.java\" rel=\"nofollow noopener\" target=\"_blank\">McpSessionManager<\/a> class has been added to the builder defined in the <a href=\"https:\/\/github.com\/google\/adk-java\/blob\/main\/core\/src\/main\/java\/com\/google\/adk\/tools\/mcp\/McpAsyncToolset.java\" rel=\"nofollow noopener\" target=\"_blank\">McpAsyncToolset<\/a> class. Further details on this release may be found in the<a href=\"https:\/\/github.com\/google\/adk-java\/releases\/tag\/v1.2.0\" rel=\"nofollow noopener\" target=\"_blank\"> release notes<\/a>.<\/p>\n<p>Hardwood<\/p>\n<p>The <a href=\"https:\/\/www.morling.dev\/blog\/variant-support-interactive-parquet-file-tui-hardwood-1.0.0.beta2-is-out\/\" rel=\"nofollow noopener\" target=\"_blank\">second beta release<\/a> of <a href=\"https:\/\/hardwood.dev\/latest\/\" rel=\"nofollow noopener\" target=\"_blank\">Hardwood<\/a> 1.0.0, a parser dedicated to the <a href=\"https:\/\/parquet.apache.org\/\" rel=\"nofollow noopener\" target=\"_blank\">Apache Parquet<\/a> file format, ships with notable changes such as: support for the <a href=\"https:\/\/parquet.apache.org\/docs\/file-format\/types\/variantencoding\/\" rel=\"nofollow noopener\" target=\"_blank\">VARIANT<\/a> type; and a new subcommand, dive, added to the <a href=\"https:\/\/hardwood.dev\/latest\/cli\/\" rel=\"nofollow noopener\" target=\"_blank\">Hardwood CLI<\/a> to interactively explore and analyse Parquet files through a text-based UI. More details on this release may be found in the <a href=\"https:\/\/github.com\/hardwood-hq\/hardwood\/releases\/tag\/v1.0.0.Beta2\" rel=\"nofollow noopener\" target=\"_blank\">release notes<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"This week&#8217;s Java roundup for April 27th, 2026, features news highlighting: OpenJDK JEPs for JDK 27; the fifth&hellip;\n","protected":false},"author":2,"featured_media":26793,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[17900,24,504,633,17898,132,17904,1429,17901,17902,17896,17893,17903,17899,11432,17894,17895,17897,17905],"class_list":{"0":"post-26792","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-google","8":"tag-agent2agent","9":"tag-ai","10":"tag-architecture-design","11":"tag-development","12":"tag-glassfish","13":"tag-google","14":"tag-google-adk-for-java","15":"tag-google-ai","16":"tag-gradle","17":"tag-hardwood","18":"tag-java","19":"tag-java-news-roundup-apr27-2026","20":"tag-jdk-27","21":"tag-jreleaser","22":"tag-langchain","23":"tag-micronaut","24":"tag-open-jdk","25":"tag-quarkus","26":"tag-spring-ai"},"_links":{"self":[{"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/posts\/26792","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/comments?post=26792"}],"version-history":[{"count":0,"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/posts\/26792\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/media\/26793"}],"wp:attachment":[{"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/media?parent=26792"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/categories?post=26792"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.europesays.com\/ai\/wp-json\/wp\/v2\/tags?post=26792"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}