Stop bundling the JMS transport in axis2.war No default axis2.xml enables a JMS listener or sender, yet every WAR carried the transport and its JNDI lookup code. It was not usable as shipped in any case: jakarta.jms-api is an API with no provider, so a WAR wanting JMS always had to add a broker client. The module is unchanged and still ships in the binary distribution's lib/, so a standalone server is unaffected; the distribution builds its WAR from that directory, which is why the exclude belongs there too. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
diff --git a/modules/webapp/pom.xml b/modules/webapp/pom.xml index 8af616c..13d950b 100644 --- a/modules/webapp/pom.xml +++ b/modules/webapp/pom.xml
@@ -139,11 +139,6 @@ </dependency> <dependency> <groupId>${project.groupId}</groupId> - <artifactId>axis2-transport-jms</artifactId> - <version>${project.version}</version> - </dependency> - <dependency> - <groupId>${project.groupId}</groupId> <artifactId>axis2-transport-mail</artifactId> <version>${project.version}</version> </dependency>
diff --git a/modules/webapp/scripts/build.xml b/modules/webapp/scripts/build.xml index 885154a..8e968f2 100644 --- a/modules/webapp/scripts/build.xml +++ b/modules/webapp/scripts/build.xml
@@ -78,6 +78,12 @@ <exclude name="axis2-java2wsdl-*.jar"/> <!-- codegen is required for Rampart because of AXIS2-4265 --> <!-- exclude name="axis2-codegen*.jar"/ --> + <!-- The JMS transport is shipped in lib/ but not bundled in the WAR: + no default axis2.xml enables a JMS listener or sender, and + jakarta.jms-api is an API with no provider, so a WAR that wanted + JMS always had to add a broker client anyway. --> + <exclude name="axis2-transport-jms-*.jar" /> + <exclude name="jakarta.jms-api-*.jar" /> <exclude name="commons-cli-*.jar" /> <exclude name="jibx-bind-*.jar" /> <exclude name="bcel-*.jar" />
diff --git a/src/site/markdown/release-notes/2.0.2.md b/src/site/markdown/release-notes/2.0.2.md index f9b540e..e106031 100644 --- a/src/site/markdown/release-notes/2.0.2.md +++ b/src/site/markdown/release-notes/2.0.2.md
@@ -3,6 +3,18 @@ (Unreleased) +## Distribution Changes + +- **The JMS transport is no longer bundled in `axis2.war`.** `axis2-transport-jms` + and `jakarta.jms-api` shipped in every WAR while no default `axis2.xml` enables a + JMS listener or sender, so every deployment carried the transport -- and its JNDI + lookup code -- without asking for it. It was never usable as shipped in any case: + `jakarta.jms-api` is an API with no provider, so enabling JMS always required + adding a broker client. The module is unchanged, remains a supported transport, + and is still in `lib/` of the binary distribution, so a standalone server is + unaffected. A WAR deployment that uses JMS now adds `axis2-transport-jms` to + `WEB-INF/lib` alongside the broker client it already had to add. + ## Deprecated for Removal - **The mail transport (`axis2-transport-mail`) is deprecated and is planned for