You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by jb...@apache.org on 2023/11/29 20:38:55 UTC

(activemq) branch activemq-6.0.x updated: [AMQ-9398] Fix activemq-ra/activemq-rar namespaces for Jakarta EE

This is an automated email from the ASF dual-hosted git repository.

jbonofre pushed a commit to branch activemq-6.0.x
in repository https://gitbox.apache.org/repos/asf/activemq.git


The following commit(s) were added to refs/heads/activemq-6.0.x by this push:
     new 01aa140ce [AMQ-9398] Fix activemq-ra/activemq-rar namespaces for Jakarta EE
01aa140ce is described below

commit 01aa140ce5d689968ffccc507dfa57eb2064b7fe
Author: Matt Pavlovich <ma...@hyte.io>
AuthorDate: Tue Nov 21 10:54:15 2023 -0600

    [AMQ-9398] Fix activemq-ra/activemq-rar namespaces for Jakarta EE
    
    (cherry picked from commit 799b802)
---
 .../apache/activemq/ra/ActiveMQActivationSpec.java | 37 +++++++++------------
 activemq-rar/src/main/rar/META-INF/ra.xml          | 38 ++++++++++------------
 activemq-rar/src/main/rar/broker-config.xml        |  2 +-
 3 files changed, 35 insertions(+), 42 deletions(-)

diff --git a/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java b/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java
index 18865c397..ad6bcabd6 100644
--- a/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java
+++ b/activemq-ra/src/main/java/org/apache/activemq/ra/ActiveMQActivationSpec.java
@@ -147,25 +147,19 @@ public class ActiveMQActivationSpec implements MessageActivationSpec, Serializab
     }
 
     public boolean isValidUseRAManagedTransaction(List<String> errorMessages) {
-        try {
-            new Boolean(useRAManagedTransaction);
-            return true;
-        } catch (Throwable e) {
-            //
+        boolean valid = isValidBooleanString(useRAManagedTransaction); 
+        if(!valid) {
+            errorMessages.add("useRAManagedTransaction must be set to: true or false.");
         }
-        errorMessages.add("useRAManagedTransaction must be set to: true or false.");
-        return false;
+        return valid; 
     }
 
     public boolean isValidNoLocal(List<String> errorMessages) {
-        try {
-            new Boolean(noLocal);
-            return true;
-        } catch (Throwable e) {
-            //
+        boolean valid = isValidBooleanString(noLocal); 
+        if(!valid) {
+            errorMessages.add("noLocal must be set to: true or false.");
         }
-        errorMessages.add("noLocal must be set to: true or false.");
-        return false;
+        return valid;
     }
 
     public boolean isValidMessageSelector(List<String> errorMessages) {
@@ -217,14 +211,11 @@ public class ActiveMQActivationSpec implements MessageActivationSpec, Serializab
     }
 
     public boolean isValidEnableBatch(List<String> errorMessages) {
-        try {
-            new Boolean(enableBatch);
-            return true;
-        } catch (Throwable e) {
-            //
+        boolean valid = isValidBooleanString(enableBatch);
+        if(!valid) {
+            errorMessages.add("enableBatch must be set to: true or false");
         }
-        errorMessages.add("enableBatch must be set to: true or false");
-        return false;
+        return valid;
     }
 
     public ResourceAdapter getResourceAdapter() {
@@ -735,4 +726,8 @@ public class ActiveMQActivationSpec implements MessageActivationSpec, Serializab
     public void setKeyStoreKeyPassword(String keyStoreKeyPassword) {
         this.keyStoreKeyPassword = keyStoreKeyPassword;
     }
+
+    private static boolean isValidBooleanString(String booleanString) {
+        return ("true".equalsIgnoreCase(booleanString) || ("false".equalsIgnoreCase(booleanString)));
+    }
 }
diff --git a/activemq-rar/src/main/rar/META-INF/ra.xml b/activemq-rar/src/main/rar/META-INF/ra.xml
index 2ff66572e..abd89802a 100644
--- a/activemq-rar/src/main/rar/META-INF/ra.xml
+++ b/activemq-rar/src/main/rar/META-INF/ra.xml
@@ -16,15 +16,14 @@
     limitations under the License.
 -->
 
-<connector xmlns="http://java.sun.com/xml/ns/j2ee"
+<connector xmlns="https://jakarta.ee/xml/ns/jakartaee"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
-    http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd"
-    version="1.5">
+    xsi:schemaLocation="https://jakarta.ee/xml/ns/jakartaee https://jakarta.ee/xml/ns/jakartaee/connector_2_0.xsd"
+    version="2.0">
     <description>ActiveMQ  inbound and outbound JMS ResourceAdapter</description>
     <display-name>ActiveMQ JMS Resource Adapter</display-name>
     <vendor-name>activemq.org</vendor-name>
-    <eis-type>JMS 1.1</eis-type>
+    <eis-type>JMS 3.1</eis-type>
     <resourceadapter-version>1.0</resourceadapter-version>
     <license>
         <description>
@@ -106,7 +105,7 @@
             <config-property-type>java.lang.String</config-property-type>
         </config-property>
 
-			  <!-- NOTE disable the following property if you do not wish to deploy an embedded broker -->
+        <!-- NOTE disable the following property if you do not wish to deploy an embedded broker -->
         <config-property>
             <description>
               Sets the XML configuration file used to configure the embedded ActiveMQ broker via 
@@ -131,36 +130,36 @@
         <outbound-resourceadapter>
             <connection-definition>
                 <managedconnectionfactory-class>org.apache.activemq.ra.ActiveMQManagedConnectionFactory</managedconnectionfactory-class>
-                <connectionfactory-interface>javax.jms.ConnectionFactory</connectionfactory-interface>
+                <connectionfactory-interface>jakarta.jms.ConnectionFactory</connectionfactory-interface>
                 <connectionfactory-impl-class>org.apache.activemq.ra.ActiveMQConnectionFactory</connectionfactory-impl-class>
-                <connection-interface>javax.jms.Connection</connection-interface>
+                <connection-interface>jakarta.jms.Connection</connection-interface>
                 <connection-impl-class>org.apache.activemq.ra.ManagedConnectionProxy</connection-impl-class>
             </connection-definition>
             <connection-definition>
                 <managedconnectionfactory-class>org.apache.activemq.ra.ActiveMQManagedConnectionFactory</managedconnectionfactory-class>
-                <connectionfactory-interface>javax.jms.QueueConnectionFactory</connectionfactory-interface>
+                <connectionfactory-interface>jakarta.jms.QueueConnectionFactory</connectionfactory-interface>
                 <connectionfactory-impl-class>org.apache.activemq.ra.ActiveMQConnectionFactory</connectionfactory-impl-class>
-                <connection-interface>javax.jms.QueueConnection</connection-interface>
+                <connection-interface>jakarta.jms.QueueConnection</connection-interface>
                 <connection-impl-class>org.apache.activemq.ra.ManagedConnectionProxy</connection-impl-class>
             </connection-definition>
             <connection-definition>
                 <managedconnectionfactory-class>org.apache.activemq.ra.ActiveMQManagedConnectionFactory</managedconnectionfactory-class>
-                <connectionfactory-interface>javax.jms.TopicConnectionFactory</connectionfactory-interface>
+                <connectionfactory-interface>jakarta.jms.TopicConnectionFactory</connectionfactory-interface>
                 <connectionfactory-impl-class>org.apache.activemq.ra.ActiveMQConnectionFactory</connectionfactory-impl-class>
-                <connection-interface>javax.jms.TopicConnection</connection-interface>
+                <connection-interface>jakarta.jms.TopicConnection</connection-interface>
                 <connection-impl-class>org.apache.activemq.ra.ManagedConnectionProxy</connection-impl-class>
             </connection-definition>
             <transaction-support>XATransaction</transaction-support>
             <authentication-mechanism>
                 <authentication-mechanism-type>BasicPassword</authentication-mechanism-type>
-                <credential-interface>javax.resource.spi.security.PasswordCredential</credential-interface>
+                <credential-interface>jakarta.resource.spi.security.PasswordCredential</credential-interface>
             </authentication-mechanism>
             <reauthentication-support>false</reauthentication-support>
         </outbound-resourceadapter>
         <inbound-resourceadapter>
             <messageadapter>
                 <messagelistener>
-                    <messagelistener-type>javax.jms.MessageListener</messagelistener-type>
+                    <messagelistener-type>jakarta.jms.MessageListener</messagelistener-type>
                     <activationspec>
                         <activationspec-class>org.apache.activemq.ra.ActiveMQActivationSpec</activationspec-class>
                         
@@ -176,7 +175,7 @@
             </messageadapter>
         </inbound-resourceadapter>
         <adminobject>
-            <adminobject-interface>javax.jms.Queue</adminobject-interface>
+            <adminobject-interface>jakarta.jms.Queue</adminobject-interface>
             <adminobject-class>org.apache.activemq.command.ActiveMQQueue</adminobject-class>
             <config-property>
                 <config-property-name>PhysicalName</config-property-name>
@@ -184,7 +183,7 @@
             </config-property>
         </adminobject>
         <adminobject>
-            <adminobject-interface>javax.jms.Topic</adminobject-interface>
+            <adminobject-interface>jakarta.jms.Topic</adminobject-interface>
             <adminobject-class>org.apache.activemq.command.ActiveMQTopic</adminobject-class>
             <config-property>
                 <config-property-name>PhysicalName</config-property-name>
@@ -192,7 +191,7 @@
             </config-property>
         </adminobject>
       <adminobject>
-          <adminobject-interface>javax.jms.ConnectionFactory</adminobject-interface>
+          <adminobject-interface>jakarta.jms.ConnectionFactory</adminobject-interface>
           <adminobject-class>org.apache.activemq.ActiveMQConnectionFactory</adminobject-class>
           <config-property>
               <config-property-name>brokerUrl</config-property-name>
@@ -200,7 +199,7 @@
           </config-property>
       </adminobject>
       <adminobject>
-          <adminobject-interface>javax.jms.ConnectionFactory</adminobject-interface>
+          <adminobject-interface>jakarta.jms.ConnectionFactory</adminobject-interface>
           <adminobject-class>org.apache.activemq.pool.XaPooledConnectionFactory</adminobject-class>
           <config-property>
               <config-property-name>brokerUrl</config-property-name>
@@ -212,7 +211,7 @@
           </config-property>
       </adminobject>
       <adminobject>
-          <adminobject-interface>javax.jms.XAConnectionFactory</adminobject-interface>
+          <adminobject-interface>jakarta.jms.XAConnectionFactory</adminobject-interface>
           <adminobject-class>org.apache.activemq.ActiveMQXAConnectionFactory</adminobject-class>
           <config-property>
             <config-property-name>brokerURL</config-property-name>
@@ -220,6 +219,5 @@
           </config-property>
        </adminobject>
 
-
     </resourceadapter>
 </connector>
diff --git a/activemq-rar/src/main/rar/broker-config.xml b/activemq-rar/src/main/rar/broker-config.xml
index 36856cd93..d8fb0f272 100644
--- a/activemq-rar/src/main/rar/broker-config.xml
+++ b/activemq-rar/src/main/rar/broker-config.xml
@@ -20,7 +20,7 @@
   xmlns="http://www.springframework.org/schema/beans"
   xmlns:amq="http://activemq.apache.org/schema/core"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
+  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
   http://activemq.apache.org/schema/core http://activemq.apache.org/schema/core/activemq-core.xsd">
 
   <!--  shutdown hook is disabled as RAR classloader may be gone at shutdown -->