From 82a48be00a6d9def14abb871a40cb68cf8a041e9 Mon Sep 17 00:00:00 2001 From: Oliver Date: Thu, 19 May 2022 14:31:03 +0800 Subject: [PATCH] [ISSUE #4335] Replace deprecated api in cl --- .../transaction/jdbc/JDBCTransactionStore.java | 2 +- .../rocketmq/broker/util/ServiceProvider.java | 2 +- .../common/protocol/header/FastCodesHeaderTest.java | 2 +- .../io/openmessaging/rocketmq/utils/BeanUtils.java | 4 ++-- .../rocketmq/remoting/protocol/RemotingCommand.java | 13 +++++++++++-- 5 files changed, 16 insertions(+), 7 deletions(-) diff --git a/broker/src/main/java/org/apache/rocketmq/broker/transaction/jdbc/JDBCTransactionStore.java b/broker/src/main/java/org/apache/rocketmq/broker/transaction/jdbc/JDBCTransactionStore.java index da4958defa..1a09e99c70 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/transaction/jdbc/JDBCTransactionStore.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/transaction/jdbc/JDBCTransactionStore.java @@ -72,7 +72,7 @@ public class JDBCTransactionStore implements TransactionStore { private boolean loadDriver() { try { - Class.forName(this.jdbcTransactionStoreConfig.getJdbcDriverClass()).newInstance(); + Class.forName(this.jdbcTransactionStoreConfig.getJdbcDriverClass()).getDeclaredConstructor().newInstance(); log.info("Loaded the appropriate driver, {}", this.jdbcTransactionStoreConfig.getJdbcDriverClass()); return true; diff --git a/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java b/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java index 21cf4c24ee..0448ceb117 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/util/ServiceProvider.java @@ -173,7 +173,7 @@ public class ServiceProvider { serviceClazz.getName(), objectId(serviceClazz.getClassLoader()), clazz.getName()); } - return (T)serviceClazz.newInstance(); + return (T)serviceClazz.getDeclaredConstructor().newInstance(); } catch (ClassNotFoundException ex) { if (classLoader == thisClassLoader) { // Nothing more to try, onwards. diff --git a/common/src/test/java/org/apache/rocketmq/common/protocol/header/FastCodesHeaderTest.java b/common/src/test/java/org/apache/rocketmq/common/protocol/header/FastCodesHeaderTest.java index 83fe315925..762d842cbb 100644 --- a/common/src/test/java/org/apache/rocketmq/common/protocol/header/FastCodesHeaderTest.java +++ b/common/src/test/java/org/apache/rocketmq/common/protocol/header/FastCodesHeaderTest.java @@ -75,7 +75,7 @@ public class FastCodesHeaderTest { private void check(RemotingCommand command, List fields, Class classHeader) throws Exception { CommandCustomHeader o1 = command.decodeCommandCustomHeader(classHeader, false); - CommandCustomHeader o2 = classHeader.newInstance(); + CommandCustomHeader o2 = classHeader.getDeclaredConstructor().newInstance(); ((FastCodesHeader)o2).decode(command.getExtFields()); for (Field f : fields) { Object value1 = f.get(o1); diff --git a/openmessaging/src/main/java/io/openmessaging/rocketmq/utils/BeanUtils.java b/openmessaging/src/main/java/io/openmessaging/rocketmq/utils/BeanUtils.java index 97d0f74bf9..d75d749c73 100644 --- a/openmessaging/src/main/java/io/openmessaging/rocketmq/utils/BeanUtils.java +++ b/openmessaging/src/main/java/io/openmessaging/rocketmq/utils/BeanUtils.java @@ -87,7 +87,7 @@ public final class BeanUtils { public static T populate(final Properties properties, final Class clazz) { T obj = null; try { - obj = clazz.newInstance(); + obj = clazz.getDeclaredConstructor().newInstance(); return populate(properties, obj); } catch (Throwable e) { log.warn("Error occurs !", e); @@ -98,7 +98,7 @@ public final class BeanUtils { public static T populate(final KeyValue properties, final Class clazz) { T obj = null; try { - obj = clazz.newInstance(); + obj = clazz.getDeclaredConstructor().newInstance(); return populate(properties, obj); } catch (Throwable e) { log.warn("Error occurs !", e); diff --git a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingCommand.java b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingCommand.java index 3d6aa52cc6..b6523a3fb2 100644 --- a/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingCommand.java +++ b/remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingCommand.java @@ -19,6 +19,7 @@ package org.apache.rocketmq.remoting.protocol; import com.alibaba.fastjson.annotation.JSONField; import java.lang.annotation.Annotation; import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Modifier; import java.nio.ByteBuffer; import java.util.HashMap; @@ -123,12 +124,16 @@ public class RemotingCommand { if (classHeader != null) { try { - CommandCustomHeader objectHeader = classHeader.newInstance(); + CommandCustomHeader objectHeader = classHeader.getDeclaredConstructor().newInstance(); cmd.customHeader = objectHeader; } catch (InstantiationException e) { return null; } catch (IllegalAccessException e) { return null; + } catch (InvocationTargetException e) { + return null; + } catch (NoSuchMethodException e) { + return null; } } @@ -243,11 +248,15 @@ public class RemotingCommand { boolean useFastEncode) throws RemotingCommandException { CommandCustomHeader objectHeader; try { - objectHeader = classHeader.newInstance(); + objectHeader = classHeader.getDeclaredConstructor().newInstance(); } catch (InstantiationException e) { return null; } catch (IllegalAccessException e) { return null; + } catch (InvocationTargetException e) { + return null; + } catch (NoSuchMethodException e) { + return null; } if (this.extFields != null) {