This is an automated email from the ASF dual-hosted git repository.
jbertram pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-website.git
The following commit(s) were added to refs/heads/main by this push:
new 6f953fc63 clarify & update JMS/Jakarta support details
6f953fc63 is described below
commit 6f953fc63d2693d4af8e86146a86bf173f297930
Author: Justin Bertram <[email protected]>
AuthorDate: Fri May 9 16:11:11 2025 -0500
clarify & update JMS/Jakarta support details
---
src/components/classic/documentation/jms2.md | 47 ++++++++++++++--------------
src/index.html | 4 +--
2 files changed, 25 insertions(+), 26 deletions(-)
diff --git a/src/components/classic/documentation/jms2.md
b/src/components/classic/documentation/jms2.md
index 5e5300d82..3e2d48a32 100644
--- a/src/components/classic/documentation/jms2.md
+++ b/src/components/classic/documentation/jms2.md
@@ -1,13 +1,11 @@
---
layout: default_md
-title: JMS v2.0
+title: ActiveMQ Classic Jakarta Messaging 3.1 & JMS 2.0 Support
title-class: page-title-classic
type: classic
---
-[Connectivity](connectivity) > [Protocols](protocols) > [JMS 2.0](jms2)
-
-ActiveMQ Classic 5.x support for JMS v3.1 and v2.0 is in progress.
+**ActiveMQ Classic 5.x & 6.x support for Jakarta Messaging 3.1 & JMS 2.0 is in
progress**. If you need full support for Jakarta Messaging 3.1 or JMS 2.0 we
recommend [ActiveMQ Artemis]({{site.baseurl}}/components/artemis).
### Transition Approach
@@ -15,7 +13,7 @@ Initially, ActiveMQ Classic clients will not support all JMS
2.0 functionality a
As features are implemented in subsequent releases, these exceptions will be
replaced with fully functional methods, examples and unit tests. See
later/below for more details on implementation progress.
-### Jakarta Messaging 3.1 support
+### Jakarta Messaging
Support for JMS 2.0 also enables building upon this for transition to Jakarta
Messaging 3.1 and its new `jakarta.jms` API namespace rather than the
historical `javax.jms` namespace.
@@ -28,10 +26,10 @@ Support for JMS 2.0 also enables building upon this for
transition to Jakarta Me
This allows for a dependency-update-only approach to the transition without
having to re-code going forward!
Client jar|API Package|Version|Notes
----|---|---
-activemq-client | jakarta.jms | 6.0.x | Jakarta Messaging 3.1 support. Works
with embedded broker and VM transport.
-activemq-client | javax.jms | 5.18.x | JMS 2.0 support. Works with embedded
broker and VM transport.
-activemq-client-jakarta | jakarta.jms | 5.18.1+ | Transitional module for
initial *client-only* Jakarta Messaging 3.1 support. Can't be used in the same
JVM as activemq-client or broker which use javax.jms API. **Note this means no
embedded broker / VM transport support, only remote brokers.**
+---|---|---|---
+activemq-client | `jakarta.jms` | 6.0.x | Partial Jakarta Messaging 3.1
support. Works with embedded broker and VM transport.
+activemq-client | `javax.jms` | 5.18.x | Partial JMS 2.0 support. Works with
embedded broker and VM transport.
+activemq-client-jakarta | `jakarta.jms` | 5.18.1+ | Transitional module for
partial, *client-only* Jakarta Messaging 3.1 support. Can't be used in the same
JVM as activemq-client or broker which use javax.jms API. **Note this means no
embedded broker / VM transport support, only remote brokers.**
There is no functional change, this is purely a Java package naming change:
```java
@@ -53,7 +51,7 @@ To use the Jakarta transition client available with ActiveMQ
Classic 5.18.x in M
<version>${activemq.version}</version>
</dependency>
```
-Note: With ActiveMQ Classic 6.0, the `activemq-client-jakarta` module is
removed as it is no longer needed.
+Note: With ActiveMQ Classic 6.x the `activemq-client-jakarta` module is
removed as it is no longer needed.
### Spring bean usage
@@ -61,25 +59,25 @@ Spring bean definitions do not change for Jakarta support.
```xml
<bean class="org.apache.activemq.ActiveMQConnectionFactory">
```
-### ActiveMQ Classic JMS v3.1, v2.0 Implementation Progress
+### Implementation Progress
-The implementation approach is subject to change. Be sure to verify features
in Release notes.
+The implementation approach is subject to change. Be sure to verify features
in release notes.
User feedback is welcome! Please comment on the JIRAs with questions and
comments.
JIRA|Status|Target Version|Completed Version|Feature|Notes
----|---|---
-[AMQ-7309](https://issues.apache.org/jira/browse/AMQ-7309) | merged | 5.18.0 |
5.18.0 | JMS v2.0 API dependency | ActiveMQ Classic will ship with a JMS v2.0
dependency jar
-[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | merged | 5.18.0 |
5.18.0 | JMSContext | Simplified JMS Context object support
-[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | merged | 5.18.0 |
5.18.0 | JMSRuntimeException | Convert JMSExceptions to be JMSRuntimeExceptions
-[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | merged | 5.18.0 |
5.18.0 | JMSConsumer | Consume messages
-[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | merged | 5.18.0 |
5.18.0 | JMSProducer | Produce messages
-[AMQ-8321](https://issues.apache.org/jira/browse/AMQ-8321) | merged | 5.18.0 |
5.18.0 | GetBody/isBodyAssignable | Support for checking body type using a
Class<?>
-[AMQ-8325](https://issues.apache.org/jira/browse/AMQ-8325) | merged | 6.0.0,
5.18.3 | 6.0.0, 5.18.3 | XA Connection methods | Updated methods when using XA
Transactions
-[AMQ-8464](https://issues.apache.org/jira/browse/AMQ-8464) | PR
[#1046](https://github.com/apache/activemq/pull/1046) | 6.1.0, 5.18.4 | |
JMSConsumer | .receiveBody(Class<T>) methods
-[AMQ-8320](https://issues.apache.org/jira/browse/AMQ-8320) | PR
[#982](https://github.com/apache/activemq/pull/982)| 6.1.0, 5.18.4 | | Delivery
Delay | Support for Message DeliveryDelay feature
-[AMQ-8324](https://issues.apache.org/jira/browse/AMQ-8324) | PR
[#1045](https://github.com/apache/activemq/pull/1045) | 6.1.0, 5.18.4 | |
JMSProducer features | Completion Listener async send support
-[AMQ-8323](https://issues.apache.org/jira/browse/AMQ-8323) | | 6.2.0, 5.18.5 |
| Shared Topic Consumer | Multi-consumer (queue-like) consuming from topic
subscriptions
+---|:---:|---|---|---|---
+[AMQ-7309](https://issues.apache.org/jira/browse/AMQ-7309) | ✅ | 5.18.0 |
5.18.0 | JMS v2.0 API dependency | ActiveMQ Classic will ship with a JMS v2.0
dependency jar
+[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | ✅ | 5.18.0 |
5.18.0 | JMSContext | Simplified JMS Context object support
+[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | ✅ | 5.18.0 |
5.18.0 | JMSRuntimeException | Convert JMSExceptions to be JMSRuntimeExceptions
+[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | ✅ | 5.18.0 |
5.18.0 | JMSConsumer | Consume messages
+[AMQ-8322](https://issues.apache.org/jira/browse/AMQ-8322) | ✅ | 5.18.0 |
5.18.0 | JMSProducer | Produce messages
+[AMQ-8321](https://issues.apache.org/jira/browse/AMQ-8321) | ✅ | 5.18.0 |
5.18.0 | GetBody/isBodyAssignable | Support for checking body type using a
Class<?>
+[AMQ-8325](https://issues.apache.org/jira/browse/AMQ-8325) | ✅ | 6.0.0, 5.18.3
| 6.0.0, 5.18.3 | XA Connection methods | Updated methods when using XA
Transactions
+[AMQ-8464](https://issues.apache.org/jira/browse/AMQ-8464) | ❌ | 6.2.0 | |
JMSConsumer | `.receiveBody(Class<T>)` methods
+[AMQ-8320](https://issues.apache.org/jira/browse/AMQ-8320) | ❌ | 6.2.0 | |
Delivery Delay | Support for Message DeliveryDelay feature
+[AMQ-8324](https://issues.apache.org/jira/browse/AMQ-8324) | ❌ | 6.2.0 | |
JMSProducer features | Completion Listener async send support
+[AMQ-8323](https://issues.apache.org/jira/browse/AMQ-8323) | ❌ | | | Shared
Topic Consumer | Multi-consumer (queue-like) consuming from topic subscriptions
### Feature notes
@@ -87,3 +85,4 @@ JMS Object|Feature|Notes
---|---|---
JMSProducer | disableMessageID | ActiveMQ Classic does not support the
optional feature of disabling MessageID
+
diff --git a/src/index.html b/src/index.html
index e8a4ba9a5..a2c65dad1 100644
--- a/src/index.html
+++ b/src/index.html
@@ -42,7 +42,7 @@ layout: default
<h4 class="card-title text-pink">ActiveMQ Classic</h4>
<p>Long established, endlessly pluggable architecture serving many
generations of applications.</p>
<ul>
- <li>Jakarta Messaging 3.1, JMS 2.0, and JMS 1.1 with full client
implementation including JNDI</li>
+ <li><a
href="{{site.baseurl}}/components/classic/documentation/jms2">Partial Jakarta
Messaging 3.1 & JMS 2.0 support</a> and full JMS 1.1 support + full client
implementation including JNDI</li>
<li>High availability using shared storage</li>
<li>Familiar JMS-based addressing model</li>
<li>Network of brokers for distributing load</li>
@@ -59,7 +59,7 @@ layout: default
<h4 class="card-title text-purple">ActiveMQ Artemis</h4>
<p>High-performance, non-blocking architecture for the next generation
of messaging applications.</p>
<ul>
- <li>JMS 1.1 & 2.0 + Jakarta Messaging 2.0 & 3.0 with full
client implementations including JNDI</li>
+ <li>Full Jakarta Messaging 3.1, JMS 2.0 & 1.1 support + full
client implementations including JNDI</li>
<li>High availability using shared storage or network
replication</li>
<li>Simple & powerful protocol agnostic addressing model</li>
<li>Flexible clustering for distributing load</li>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact