This is an automated email from the ASF dual-hosted git repository. robertlazarski pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git
commit 3084977ac9ab7914ed2d4fbe003855ce9a77bc2e Author: Robert Lazarski <[email protected]> AuthorDate: Mon Oct 12 07:58:04 2026 -1000 Update docs for WildFly 41 testing and current Spring Boot versions References to WildFly 39 now name WildFly 41.0.1, which was tested with OpenJDK 21 and 25. The samples' tested Spring Boot version is 3.5.16, and the starter page notes that the starter itself builds against Spring Boot 4.1.1. Also fixes the stale toc.xml anchor for the MCP examples' live section. Co-Authored-By: Claude Opus 5.5 <[email protected]> --- .../src/userguide/springbootdemo-tomcat11/README.md | 4 ++-- .../src/userguide/springbootdemo-wildfly/README.md | 4 ++-- .../src/userguide/springbootdemo-wildfly/pom.xml | 4 ++-- src/site/markdown/docs/mcp-architecture.md | 6 +++--- src/site/markdown/docs/mcp-examples.md | 16 ++++++++-------- src/site/xdoc/docs/Axis2ArchitectureGuide.xml | 2 +- src/site/xdoc/docs/json-rpc-mcp-guide.xml | 2 +- .../xdoc/docs/json-springboot-tomcat11-userguide.xml | 2 +- src/site/xdoc/docs/json-springboot-userguide.xml | 2 +- src/site/xdoc/docs/spring-boot-starter.xml | 12 ++++++------ src/site/xdoc/docs/toc.xml | 2 +- src/site/xdoc/docs/wildfly-http2-integration-guide.xml | 4 ++-- src/site/xdoc/index.xml | 6 +++--- 13 files changed, 33 insertions(+), 33 deletions(-) diff --git a/modules/samples/userguide/src/userguide/springbootdemo-tomcat11/README.md b/modules/samples/userguide/src/userguide/springbootdemo-tomcat11/README.md index 502db42a37..054018fd74 100644 --- a/modules/samples/userguide/src/userguide/springbootdemo-tomcat11/README.md +++ b/modules/samples/userguide/src/userguide/springbootdemo-tomcat11/README.md @@ -22,7 +22,7 @@ Axis2 JSON-RPC services deployed as a WAR in **Apache Tomcat 11**, using Spring Boot 3.x as a configuration framework only — there is no embedded container. -Tested with: **Tomcat 11.0.20** · **OpenJDK 21** · **Spring Boot 3.4.3** +Tested with: **Tomcat 11.0.20** · **OpenJDK 21** · **Spring Boot 3.5.16** > **JDK compatibility note:** The WAR is compiled at Java 21 source level > (`<java.version>21</java.version>`) > and has been tested on both **OpenJDK 21** and **OpenJDK 25** under Tomcat > 11. @@ -246,7 +246,7 @@ via `build-helper-maven-plugin`. The only differences are container-specific: | Aspect | `springbootdemo-tomcat11` | `springbootdemo-wildfly` | |--------|--------------------------|--------------------------| | Server | Apache Tomcat 11 | WildFly 32+ (Undertow) | -| Tested on | Tomcat 11.0.20 / Java 21 and Java 25 | WildFly 39 / Java 25 | +| Tested on | Tomcat 11.0.20 / Java 21 and Java 25 | WildFly 41 / Java 21 and Java 25 | | WAR output | `target/deploy/axis2-json-api/` (no `.war` suffix) | `target/deploy/axis2-json-api/` | | Extra WEB-INF files | — | `jboss-deployment-structure.xml`, `jboss-web.xml`, `beans.xml` | | Context path | `/axis2-json-api` | `/axis2-json-api` | diff --git a/modules/samples/userguide/src/userguide/springbootdemo-wildfly/README.md b/modules/samples/userguide/src/userguide/springbootdemo-wildfly/README.md index be358e434a..9ff925eb8a 100644 --- a/modules/samples/userguide/src/userguide/springbootdemo-wildfly/README.md +++ b/modules/samples/userguide/src/userguide/springbootdemo-wildfly/README.md @@ -22,7 +22,7 @@ Axis2 JSON-RPC services deployed as a WAR in **WildFly** (Undertow), using Spring Boot 3.x as a configuration framework only — there is no embedded container. -Tested with: **WildFly 32.0.1.Final** (OpenJDK 21) · **WildFly 39.0.1.Final** (OpenJDK 25) · **Spring Boot 3.4.3** +Tested with: **WildFly 32.0.1.Final** (OpenJDK 21) · **WildFly 41.0.1.Final** (OpenJDK 21, OpenJDK 25) · **Spring Boot 3.5.16** All Java source is shared from `../springbootdemo-tomcat11/src/main/java` via `build-helper-maven-plugin`. This module only adds WildFly-specific WEB-INF descriptors. @@ -130,7 +130,7 @@ init parameter directly. Without this, only some services load. ### WildFly module upgrade notes -When upgrading WildFly (e.g., 32 → 39), clear cached state before redeploying: +When upgrading WildFly (e.g., 32 → 41), clear cached state before redeploying: ```bash rm -rf ~/wildfly/standalone/configuration/standalone_xml_history/ diff --git a/modules/samples/userguide/src/userguide/springbootdemo-wildfly/pom.xml b/modules/samples/userguide/src/userguide/springbootdemo-wildfly/pom.xml index 46e8f3f9e1..4e4ad9b523 100644 --- a/modules/samples/userguide/src/userguide/springbootdemo-wildfly/pom.xml +++ b/modules/samples/userguide/src/userguide/springbootdemo-wildfly/pom.xml @@ -22,7 +22,7 @@ <!-- springbootdemo-wildfly — WildFly 32+ / Java 21+ deployment of the same Spring Boot + Axis2 demo that springbootdemo-tomcat11 targets for Tomcat 11. - Tested on WildFly 39.0.1.Final / OpenJDK 25. + Tested on WildFly 41.0.1.Final / OpenJDK 21 and OpenJDK 25. Java source, resources and the Axis2 repository content are all shared from ../springbootdemo-tomcat11 — keep the dependency list here in step with that @@ -43,7 +43,7 @@ <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>axis2-json-api-wildfly</name> - <description>Spring Boot + Axis2 demo — WildFly 32+ / Java 21+ (tested on WildFly 39 / Java 25)</description> + <description>Spring Boot + Axis2 demo — WildFly 32+ / Java 21+ (tested on WildFly 41 / Java 21 and Java 25)</description> <parent> <groupId>org.springframework.boot</groupId> diff --git a/src/site/markdown/docs/mcp-architecture.md b/src/site/markdown/docs/mcp-architecture.md index a6ff407b05..879d352248 100644 --- a/src/site/markdown/docs/mcp-architecture.md +++ b/src/site/markdown/docs/mcp-architecture.md @@ -33,7 +33,7 @@ modelcontextprotocol.io. Build, deploy, and test instructions for each container are in the sample READMEs: - **Tomcat 11**: `modules/samples/userguide/src/userguide/springbootdemo-tomcat11/README.md` -- **WildFly 32/39**: `modules/samples/userguide/src/userguide/springbootdemo-wildfly/README.md` +- **WildFly 32/41**: `modules/samples/userguide/src/userguide/springbootdemo-wildfly/README.md` ``` springbootdemo-tomcat11 base URL: https://localhost:8443/axis2-json-api @@ -44,7 +44,7 @@ springbootdemo-wildfly base URL: https://localhost:8443/axis2-json-api - LoginService (JWT auth) - FinancialBenchmarkService (portfolioVariance, monteCarlo VaR with Merton jump-diffusion, scenarioAnalysis) - BigDataH2Service (HTTP/2 streaming) - Deployed and validated on WildFly 32 and WildFly 39 + Deployed and validated on WildFly 32 and WildFly 41 ``` `BigDataH2Service` request format (confirmed working via MCP bridge): @@ -360,7 +360,7 @@ MCP and OpenAPI support needs validation across the full container/JDK matrix: | Container | JDK | MCP | OpenAPI | Status | |-----------|-----|-----|---------|--------| | WildFly 32 | OpenJDK 21 | ✅ | ✅ | Validated | -| WildFly 39 | OpenJDK 25 | ✅ | ✅ | Validated | +| WildFly 41 | OpenJDK 21, 25 | ✅ | ✅ | Validated | | Tomcat 11 | OpenJDK 21 | ✅ | ✅ | Validated | | Tomcat 11 | OpenJDK 25 | ✅ | ✅ | Validated | diff --git a/src/site/markdown/docs/mcp-examples.md b/src/site/markdown/docs/mcp-examples.md index 7b7775adef..c0562e978e 100644 --- a/src/site/markdown/docs/mcp-examples.md +++ b/src/site/markdown/docs/mcp-examples.md @@ -2,7 +2,7 @@ **Summary**: Apache Axis2/Java serves the same financial calculations as Axis2/C — portfolio variance, Monte Carlo VaR (GBM and Merton jump-diffusion), scenario -analysis — over JSON on WildFly 32/39 and Tomcat 11 with Spring Security JWT +analysis — over JSON on WildFly 32/41 and Tomcat 11 with Spring Security JWT authentication. This document shows the same live demos as the Axis2/C `MCP_EXAMPLES.md`, run against the Java implementation, with head-to-head performance numbers. @@ -16,7 +16,7 @@ The implementations compete only on performance. Both Axis2/C and Axis2/Java support **HTTPS/HTTP2**. Axis2/C runs over Apache httpd with mod_h2; Axis2/Java runs over WildFly or Tomcat with -ALPN-negotiated HTTP/2 on port 8443. Verified on WildFly 32, WildFly 39, +ALPN-negotiated HTTP/2 on port 8443. Verified on WildFly 32, WildFly 41, and Tomcat 11 — all negotiate `h2` via ALPN when accessed over TLS. All timings in this document use the **server-reported `calcTimeUs` field** @@ -94,7 +94,7 @@ All curl examples below include paired MCP stdio equivalents. --- -## Live Examples (Tested on WildFly 32/39 and Tomcat 11) +## Live Examples (Tested on WildFly 32/41 and Tomcat 11) ### Portfolio Variance — 5 assets @@ -602,7 +602,7 @@ and JDK versions before the 2.0.1 release: | Container | JDK | MCP Bridge | OpenAPI/Swagger UI | Status | |-----------|-----|------------|-------------------|--------| | WildFly 32 | OpenJDK 21 | ✅ Tested | ✅ Tested | Validated | -| WildFly 39 | OpenJDK 25 | ✅ Tested | ✅ Tested | Validated | +| WildFly 41 | OpenJDK 21, 25 | ✅ Tested | ✅ Tested | Validated | | Tomcat 11 | OpenJDK 21 | ✅ Tested | ✅ Tested | Validated | | Tomcat 11 | OpenJDK 25 | ✅ Tested | ✅ Tested | Validated | @@ -667,7 +667,7 @@ $CURL_MTLS -X POST https://localhost:8443/axis2-json-api/services/FinancialBench -d '{"portfolioVariance":[{"arg0":{"nAssets":2,"weights":[0.6,0.4],"covarianceMatrix":[[0.04,0.006],[0.006,0.09]]}}]}' ``` -**WildFly 32/39** (HTTPS/HTTP2 on port 8443 with self-signed cert, JWT auth): +**WildFly 32/41** (HTTPS/HTTP2 on port 8443 with self-signed cert, JWT auth): ```bash # OpenAPI and MCP @@ -692,10 +692,10 @@ See the sample READMEs for the complete test flow covering all services. ## WildFly Deployment Notes See `WILDFLY32_DEPLOY_STATE.md` in the Axis2/C repo for the full deployment -walkthrough. Key points (apply to both WildFly 32 and WildFly 39): +walkthrough. Key points (apply to both WildFly 32 and WildFly 41): -- WildFly 32.0.1.Final or WildFly 39 with `--add-modules=java.se` in `standalone.conf` +- WildFly 32.0.1.Final or WildFly 41 with `--add-modules=java.se` in `standalone.conf` - `jboss-deployment-structure.xml` from production deployment template (includes `jdk.net` module dependency) - `beans.xml` with `bean-discovery-mode="none"` (satisfies Weld without CDI scanning) -- Spring Boot 3.4.3 starts in ~0.9 seconds inside WildFly +- Spring Boot 3.5.16 starts in ~1 second inside WildFly - WAR: `axis2-json-api-0.0.1-SNAPSHOT.war` diff --git a/src/site/xdoc/docs/Axis2ArchitectureGuide.xml b/src/site/xdoc/docs/Axis2ArchitectureGuide.xml index 16f63f3e16..ff2ba0b120 100644 --- a/src/site/xdoc/docs/Axis2ArchitectureGuide.xml +++ b/src/site/xdoc/docs/Axis2ArchitectureGuide.xml @@ -173,7 +173,7 @@ dependency and your services are live. See <td>Deploy as a standard WAR with Jakarta Servlet 6.0 support.</td> </tr> <tr> -<td><strong>WildFly 32 / 39</strong></td> +<td><strong>WildFly 32 / 41</strong></td> <td>Deploy as a WAR or EAR. Axis2 integrates with the WildFly class-loading and JNDI subsystems.</td> </tr> diff --git a/src/site/xdoc/docs/json-rpc-mcp-guide.xml b/src/site/xdoc/docs/json-rpc-mcp-guide.xml index 71f9903a99..c0f750db29 100644 --- a/src/site/xdoc/docs/json-rpc-mcp-guide.xml +++ b/src/site/xdoc/docs/json-rpc-mcp-guide.xml @@ -38,7 +38,7 @@ catalog, the required envelope format, authentication flow, and current limitati <a href="https://github.com/apache/axis-axis2-java-core/blob/master/modules/samples/userguide/src/userguide/springbootdemo-tomcat11/README.md">springbootdemo-tomcat11 README</a> (Tomcat 11) and <a href="https://github.com/apache/axis-axis2-java-core/blob/master/modules/samples/userguide/src/userguide/springbootdemo-wildfly/README.md">springbootdemo-wildfly README</a> -(WildFly 32/39).</p> +(WildFly 32/41).</p> <p><strong>In one sentence:</strong> Axis2 auto-generates an MCP tool catalog from its deployed services, accessible at <code>/openapi-mcp.json</code>, that tells MCP clients diff --git a/src/site/xdoc/docs/json-springboot-tomcat11-userguide.xml b/src/site/xdoc/docs/json-springboot-tomcat11-userguide.xml index eaf2ec9fb5..e1c623d89b 100644 --- a/src/site/xdoc/docs/json-springboot-tomcat11-userguide.xml +++ b/src/site/xdoc/docs/json-springboot-tomcat11-userguide.xml @@ -74,7 +74,7 @@ prefix the subject of the mail with [Axis2].</p> which targets WildFly 32. The following table summarises all differences:</p> <table border="1" cellpadding="4"> -<tr><th>Aspect</th><th>WildFly 32 / 39</th><th>Tomcat 11</th></tr> +<tr><th>Aspect</th><th>WildFly 32 / 41</th><th>Tomcat 11</th></tr> <tr> <td><strong>Context root</strong></td> <td><code>/axis2-json-api</code> (WAR name becomes context root automatically)</td> diff --git a/src/site/xdoc/docs/json-springboot-userguide.xml b/src/site/xdoc/docs/json-springboot-userguide.xml index 43b35ebe97..b9bdd43572 100644 --- a/src/site/xdoc/docs/json-springboot-userguide.xml +++ b/src/site/xdoc/docs/json-springboot-userguide.xml @@ -111,7 +111,7 @@ This guide supplies a pom.xml for building an exploded WAR with Spring Boot 3 this WAR does not have an embedded web server and must be deployed to an external application server. </p> <p> -Testing was carried out on WildFly 32 with OpenJDK 21, and WildFly 39 with OpenJDK 25, by installing the WAR in the app server. +Testing was carried out on WildFly 32 with OpenJDK 21, and WildFly 41 with OpenJDK 21 and OpenJDK 25, by installing the WAR in the app server. For the equivalent guide targeting Apache Tomcat 11, see the <a href="json-springboot-tomcat11-userguide.html">Tomcat 11 User's Guide</a>. The key differences between the two deployments are: diff --git a/src/site/xdoc/docs/spring-boot-starter.xml b/src/site/xdoc/docs/spring-boot-starter.xml index e7eecba264..02c672a773 100644 --- a/src/site/xdoc/docs/spring-boot-starter.xml +++ b/src/site/xdoc/docs/spring-boot-starter.xml @@ -79,7 +79,7 @@ with sensible defaults — for both SOAP and JSON-RPC services.</p> </ul> <p>This starter supports both <strong>WAR deployment</strong> to an external container -(Tomcat 11, WildFly 32/39) and <strong>embedded Tomcat</strong> for local development. +(Tomcat 11, WildFly 32/41) and <strong>embedded Tomcat</strong> for local development. For embedded mode, set <code>axis2.repo</code> in <code>application.properties</code> to the exploded WAR directory from your build. See <a href="#deployment_model">Deployment Model</a> for details.</p> @@ -194,14 +194,14 @@ curl -s http://localhost:9090/openapi-mcp.json <tr><th>Container</th><th>JDK</th><th>Tested</th></tr> <tr><td>Apache Tomcat 11</td><td>OpenJDK 17, 21, 25</td><td>Yes (21/25 live-tested; 17 is the minimum supported by Tomcat 11 and Spring Boot 3.x)</td></tr> <tr><td>WildFly 32</td><td>OpenJDK 17, 21</td><td>Yes (production-tested on WildFly 32 + OpenJDK 17)</td></tr> -<tr><td>WildFly 39</td><td>OpenJDK 21, 25</td><td>Yes (live-tested with OpenJDK 25)</td></tr> +<tr><td>WildFly 41</td><td>OpenJDK 21, 25</td><td>Yes (live-tested with OpenJDK 21 and 25)</td></tr> </table> <p><strong>Minimum JDK version: OpenJDK 17.</strong> Axis2 core and the starter compile and pass CI tests with <code>-Dmaven.compiler.release=17</code>. -Spring Boot 3.x and Tomcat 11 both require Java 17 as a minimum. The sample -applications target Java 21 source level but Axis2 itself imposes no version -above 17.</p> +Spring Boot 3.x, Spring Boot 4.x and Tomcat 11 all require Java 17 as a minimum. The starter +is built against Spring Boot 4.1.1. The sample applications use Spring Boot 3.5.16 +and target Java 21 source level, but Axis2 itself imposes no version above 17.</p> <p>Other Jakarta EE 9+ containers (WebSphere Liberty, Payara) should work but are not tested.</p> @@ -571,7 +571,7 @@ identical in structure to the configuration used by the legacy userguide <h3>Container matrix</h3> <p>See <a href="#deployment_model">Section 0</a> for the full container -compatibility matrix covering WAR deployment (Tomcat 11, WildFly 32/39) +compatibility matrix covering WAR deployment (Tomcat 11, WildFly 32/41) and embedded Tomcat for local development.</p> <!-- ============================================================ --> diff --git a/src/site/xdoc/docs/toc.xml b/src/site/xdoc/docs/toc.xml index 8c67825a02..3ff2993239 100644 --- a/src/site/xdoc/docs/toc.xml +++ b/src/site/xdoc/docs/toc.xml @@ -193,7 +193,7 @@ Support</a></li> </li> <li><strong>23.7 <a href="mcp-examples.html">MCP Examples — Financial Services Benchmarks</a></strong> <ul> - <li><a href="mcp-examples.html#Live_Examples_.28Tested_on_WildFly_32.29">Live Examples (WildFly 32)</a></li> + <li><a href="mcp-examples.html#Live_Examples_.28Tested_on_WildFly_32.2F41_and_Tomcat_11.29">Live Examples (WildFly 32/41, Tomcat 11)</a></li> <li><a href="mcp-examples.html#Demo_1.3A_Stress-test_.E2.80.94_.E2.80.9CWhat_if_correlations_spike.3F.E2.80.9D">Demo 1: Stress Test</a></li> <li><a href="mcp-examples.html#Demo_2.3A_Pre-trade_risk_.E2.80.94_.E2.80.9CShould_I_add_this_name.3F.E2.80.9D">Demo 2: Pre-Trade Risk</a></li> <li><a href="mcp-examples.html#Demo_3.3A_Convergence_.E2.80.94_.E2.80.9CHow_much_compute_do_I_actually_need.3F.E2.80.9D">Demo 3: Convergence</a></li> diff --git a/src/site/xdoc/docs/wildfly-http2-integration-guide.xml b/src/site/xdoc/docs/wildfly-http2-integration-guide.xml index 263a70b90c..0bb26c3501 100644 --- a/src/site/xdoc/docs/wildfly-http2-integration-guide.xml +++ b/src/site/xdoc/docs/wildfly-http2-integration-guide.xml @@ -28,9 +28,9 @@ <h1>WildFly + Axis2 HTTP/2 Integration Guide</h1> -<p><strong>Tested on:</strong> WildFly 32 (OpenJDK 17, 21) and WildFly 39 +<p><strong>Tested on:</strong> WildFly 32 (OpenJDK 17, 21) and WildFly 41 (OpenJDK 21, 25). Configuration examples below use WildFly 32 syntax; -WildFly 39 is compatible with the same configuration.</p> +WildFly 41 is compatible with the same configuration.</p> <div style="background-color: #ffe8e8; border: 1px solid #ff4444; padding: 10px; margin: 10px 0;"> diff --git a/src/site/xdoc/index.xml b/src/site/xdoc/index.xml index ed296cc605..eb83792d19 100644 --- a/src/site/xdoc/index.xml +++ b/src/site/xdoc/index.xml @@ -65,7 +65,7 @@ immediately after Axis2/Java 2.0.2, on which it depends. Rampart 2.0.0 brings WS-Security up to date with the Jakarta EE 9+ / Axis2 2.0.x line (<code>jakarta.*</code> namespaces, modern WSS4J, current OpenJDK support) so legacy SOAP services with WS-Security policies can run unchanged on -the same Tomcat 11 / WildFly 32 / WildFly 39 stack as the rest of +the same Tomcat 11 / WildFly 32 / WildFly 41 stack as the rest of Axis2/Java. Minimum OpenJDK version is 17; tested with the same server/JDK combinations listed below. See the <a href="https://axis.apache.org/axis2/java/rampart/">Apache Rampart @@ -80,8 +80,8 @@ no code duplication, no wrapper layers. Add the <a href="docs/spring-boot-starter.html">Spring Boot Starter</a> dependency and your services are live on a modern application server. <strong>Minimum OpenJDK version is 17.</strong> Tested configurations: Tomcat 11 with -OpenJDK 21 and OpenJDK 25, WildFly 32 with OpenJDK 21, and WildFly 39 -with OpenJDK 25.</p> +OpenJDK 21 and OpenJDK 25, WildFly 32 with OpenJDK 21, and WildFly 41 +with OpenJDK 21 and OpenJDK 25.</p> <p>The architecture that made this possible was designed at the August 2004 Summit in Colombo, Sri Lanka. Its handler chain — a pipeline of phases that
