You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2017/03/19 11:46:02 UTC

svn commit: r1787613 - in /qpid/java/trunk: ./ broker-core/src/main/java/org/apache/qpid/server/transport/ broker-core/src/main/java/org/apache/qpid/server/transport/network/security/ssl/ broker-plugins/management-http/src/main/java/org/apache/qpid/ser...

Author: kwall
Date: Sun Mar 19 11:46:02 2017
New Revision: 1787613

URL: http://svn.apache.org/viewvc?rev=1787613&view=rev
Log:
QPID-7621: [Java Broker] Broker now requires JDK 1.8

Changed pre-1.8 compatible reflective code, SSLParameters#setUseCipherSuitesOrder, into ordinary method call.

Modified:
    qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java
    qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtil.java
    qpid/java/trunk/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java
    qpid/java/trunk/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java
    qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Miscellaneous.xml
    qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Installation.xml
    qpid/java/trunk/pom.xml

Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java?rev=1787613&r1=1787612&r2=1787613&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/NonBlockingConnectionTLSDelegate.java Sun Mar 19 11:46:02 2017
@@ -31,6 +31,7 @@ import java.util.ListIterator;
 import javax.net.ssl.SSLEngine;
 import javax.net.ssl.SSLEngineResult;
 import javax.net.ssl.SSLException;
+import javax.net.ssl.SSLParameters;
 import javax.net.ssl.SSLPeerUnverifiedException;
 import javax.net.ssl.SSLSession;
 
@@ -324,7 +325,8 @@ public class NonBlockingConnectionTLSDel
         SSLUtil.updateEnabledCipherSuites(sslEngine, port.getTlsCipherSuiteWhiteList(), port.getTlsCipherSuiteBlackList());
         if(port.getTlsCipherSuiteWhiteList() != null && !port.getTlsCipherSuiteWhiteList().isEmpty())
         {
-            SSLUtil.useCipherOrderIfPossible(sslEngine);
+            SSLParameters sslParameters = sslEngine.getSSLParameters();
+            sslParameters.setUseCipherSuitesOrder(true);
         }
 
         if(port.getNeedClientAuth())

Modified: qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtil.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtil.java?rev=1787613&r1=1787612&r2=1787613&view=diff
==============================================================================
--- qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtil.java (original)
+++ qpid/java/trunk/broker-core/src/main/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtil.java Sun Mar 19 11:46:02 2017
@@ -27,8 +27,6 @@ import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.StringReader;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
 import java.math.BigInteger;
 import java.net.URL;
 import java.nio.BufferUnderflowException;
@@ -77,24 +75,6 @@ public class SSLUtil
     private static final Integer DNS_NAME_TYPE = 2;
     public static final String[] TLS_PROTOCOL_PREFERENCES = new String[]{"TLSv1.2", "TLSv1.1", "TLS", "TLSv1"};
 
-    private static final Method SSL_PARAMETERS_SET_USE_CIPHER_SUITES_ORDER;
-
-    static
-    {
-        Method method;
-        try
-        {
-            method = SSLParameters.class.getMethod("setUseCipherSuitesOrder", Boolean.TYPE);
-        }
-        catch (NoSuchMethodException e)
-        {
-            method = null;
-        }
-
-        SSL_PARAMETERS_SET_USE_CIPHER_SUITES_ORDER = method;
-    }
-
-
     private SSLUtil()
     {
     }
@@ -632,21 +612,4 @@ public class SSLUtil
         throw new NoSuchAlgorithmException(String.format("Could not create SSLContext with one of the requested protocols: %s",
                                                          Arrays.toString(protocols)));
     }
-
-    public static void useCipherOrderIfPossible(final SSLEngine sslEngine)
-    {
-        if(SSL_PARAMETERS_SET_USE_CIPHER_SUITES_ORDER != null)
-        {
-            SSLParameters sslParameters = sslEngine.getSSLParameters();
-            try
-            {
-                SSL_PARAMETERS_SET_USE_CIPHER_SUITES_ORDER.invoke(sslParameters, Boolean.TRUE);
-                sslEngine.setSSLParameters(sslParameters);
-            }
-            catch (IllegalAccessException | InvocationTargetException e)
-            {
-                LOGGER.debug("Unable to invoke SSLParameters.setCipherSuiteOrder", e);
-            }
-        }
-    }
 }

Modified: qpid/java/trunk/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java?rev=1787613&r1=1787612&r2=1787613&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java (original)
+++ qpid/java/trunk/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java Sun Mar 19 11:46:02 2017
@@ -40,6 +40,7 @@ import java.util.Set;
 import javax.net.ssl.KeyManager;
 import javax.net.ssl.SSLContext;
 import javax.net.ssl.SSLEngine;
+import javax.net.ssl.SSLParameters;
 import javax.net.ssl.TrustManager;
 import javax.net.ssl.X509TrustManager;
 import javax.servlet.DispatcherType;
@@ -516,15 +517,11 @@ public class HttpManagement extends Abst
                                         public void customize(final SSLEngine sslEngine)
                                         {
                                             super.customize(sslEngine);
-                                            useCipherOrderIfPossible(sslEngine);
-                                        }
-
-                                        private void useCipherOrderIfPossible(final SSLEngine sslEngine)
-                                        {
                                             if(port.getTlsCipherSuiteWhiteList() != null
                                                && !port.getTlsCipherSuiteWhiteList().isEmpty())
                                             {
-                                                SSLUtil.useCipherOrderIfPossible(sslEngine);
+                                                SSLParameters sslParameters = sslEngine.getSSLParameters();
+                                                sslParameters.setUseCipherSuitesOrder(true);
                                             }
                                         }
                                     };

Modified: qpid/java/trunk/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java?rev=1787613&r1=1787612&r2=1787613&view=diff
==============================================================================
--- qpid/java/trunk/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java (original)
+++ qpid/java/trunk/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java Sun Mar 19 11:46:02 2017
@@ -37,6 +37,7 @@ import java.util.concurrent.atomic.Atomi
 
 import javax.net.ssl.SSLContext;
 import javax.net.ssl.SSLEngine;
+import javax.net.ssl.SSLParameters;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -149,15 +150,11 @@ class WebSocketProvider implements Accep
                                             public void customize(final SSLEngine sslEngine)
                                             {
                                                 super.customize(sslEngine);
-                                                useCipherOrderIfPossible(sslEngine);
-                                            }
-
-                                            private void useCipherOrderIfPossible(final SSLEngine sslEngine)
-                                            {
                                                 if(_port.getTlsCipherSuiteWhiteList() != null
                                                    && !_port.getTlsCipherSuiteWhiteList().isEmpty())
                                                 {
-                                                    SSLUtil.useCipherOrderIfPossible(sslEngine);
+                                                    SSLParameters sslParameters = sslEngine.getSSLParameters();
+                                                    sslParameters.setUseCipherSuitesOrder(true);
                                                 }
                                             }
                                         };

Modified: qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Miscellaneous.xml
URL: http://svn.apache.org/viewvc/qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Miscellaneous.xml?rev=1787613&r1=1787612&r2=1787613&view=diff
==============================================================================
--- qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Miscellaneous.xml (original)
+++ qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Appendix-Miscellaneous.xml Sun Mar 19 11:46:02 2017
@@ -31,14 +31,14 @@
         following at the command prompt: </para>
       <programlisting>echo %JAVA_HOME%</programlisting>
       <para> If JAVA_HOME is set you will see something similar to the following: </para>
-      <screen>c:"\PROGRA~1"\Java\jdk1.7.0_79\
+      <screen>c:"\PROGRA~1"\Java\jdk1.8.0_121\
       </screen>
-      <para> Then confirm that a Java installation (1.7 or higher) is available: </para>
+      <para> Then confirm that a Java installation (1.8 or higher) is available: </para>
       <programlisting>java -version</programlisting>
       <para> If java is available on the path, output similar to the following will be seen: </para>
-      <screen>java version "1.7.0_79"
-Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
-Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)</screen>
+      <screen>java version "1.8.0_121-b13"
+Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
+Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)</screen>
     </section>
 
     <section role="h2" xml:id="Java-Broker-Miscellaneous-JVM-Verification-Unix">
@@ -47,14 +47,14 @@ Java HotSpot(TM) 64-Bit Server VM (build
         following at the command prompt: </para>
       <programlisting>echo $JAVA_HOME</programlisting>
       <para> If JAVA_HOME is set you will see something similar to the following: </para>
-      <screen>/usr/java/jdk1.7.0_80
+      <screen>/usr/java/jdk1.8.0_121
       </screen>
-      <para> Then confirm that a Java installation (1.7 or higher) is available: </para>
+      <para> Then confirm that a Java installation (1.8 or higher) is available: </para>
       <programlisting>java -version</programlisting>
       <para> If java is available on the path, output similar to the following will be seen: </para>
-      <screen>java version "1.7.0_80"
-Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
-Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)</screen>
+      <screen>java version "1.8.0_121-b13"
+        Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
+        Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)</screen>
     </section>
   </section>
   <section role="h2" xml:id="Java-Broker-Miscellaneous-Installing-External-JDBC-Driver">

Modified: qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Installation.xml
URL: http://svn.apache.org/viewvc/qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Installation.xml?rev=1787613&r1=1787612&r2=1787613&view=diff
==============================================================================
--- qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Installation.xml (original)
+++ qpid/java/trunk/doc/java-broker/src/docbkx/Java-Broker-Installation.xml Sun Mar 19 11:46:02 2017
@@ -32,9 +32,9 @@
     <section role="h3" xml:id="Java-Broker-Installation-Prerequistes-Java">
       <title>Java Platform</title>
       <para> The Apache Qpid Broker for Java is an 100% Java implementation and as such it can be used on any
-        operating system supporting Java 1.7  or higher<footnote><para>Java Cryptography Extension (JCE)
+        operating system supporting Java 1.8  or higher<footnote><para>Java Cryptography Extension (JCE)
           Unlimited Strength policy file are required for some features</para></footnote>. This includes Linux, Solaris, Mac OS X, and
-        Windows XP/Vista/7/8.</para>
+        Windows Vista/7/8/10.</para>
       <para> The broker has been tested with Java implementations from both Oracle and IBM. Whatever
         platform you chose, it is recommended that you ensure it is patched with any critical
         updates made available from the vendor. </para>

Modified: qpid/java/trunk/pom.xml
URL: http://svn.apache.org/viewvc/qpid/java/trunk/pom.xml?rev=1787613&r1=1787612&r2=1787613&view=diff
==============================================================================
--- qpid/java/trunk/pom.xml (original)
+++ qpid/java/trunk/pom.xml Sun Mar 19 11:46:02 2017
@@ -76,9 +76,9 @@
 
   <properties>
     <minimum-maven-version>3.0.0</minimum-maven-version>
-    <minimum-java-version>1.7.0</minimum-java-version>
-    <java.source>1.7</java.source>
-    <java.target>1.7</java.target>
+    <minimum-java-version>1.8.0</minimum-java-version>
+    <java.source>1.8</java.source>
+    <java.target>1.8</java.target>
 
     <!-- enforcer plugin config properties -->
     <supported-test-profiles-regex>(java-mms.0-9|java-mms.0-9-1|java-mms.0-10|java-mms.1-0|java-bdb.0-9|java-bdb.0-9-1|java-bdb.0-10|java-bdb.1-0|java-dby.0-9|java-dby.0-9-1|java-dby.0-10|java-dby.1-0|java-dby-mem.0-9|java-dby-mem.0-9-1|java-dby-mem.0-10|cpp|java-json.0-9-1|java-json.0-10|java-json.1-0)</supported-test-profiles-regex>
@@ -1142,8 +1142,8 @@
                 <configuration>
                   <rules>
                     <requireJavaVersion>
-                      <version>[1.7,1.8)</version>
-                      <message>Please, use JDK 1.7 for release</message>
+                      <version>[1.8,1.9)</version>
+                      <message>Please, use JDK 1.8 for release</message>
                     </requireJavaVersion>
                   </rules>
                 </configuration>



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org