details: https://code.openbravo.com/erp/devel/pi/rev/d526512e5e96 changeset: 33673:d526512e5e96 user: Javier Armendáriz <javier.armendariz <at> openbravo.com> date: Fri Mar 09 14:18:48 2018 +0100 summary: Fixed issue 37943: Removed newInstance() deprecation warnings.
Class.newInstance() is deprecated from JDK 9. It is replaced by Class.getDeclaredConstructor().newInstance(), but it has the drawback that this call throws an instance of ReflectiveOperationException that must be taken into account. diffstat: modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/ImportBankFile.java | 5 ++- modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_ExecutePayment.java | 8 +++-- modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_MatchingTransaction.java | 7 +++- modules/org.openbravo.client.application/src/org/openbravo/client/application/OBBindings.java | 3 +- modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java | 2 +- modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/UIDefinitionController.java | 6 ++-- modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DataSourceProperty.java | 4 +- src-core/src/org/openbravo/base/HttpBaseServlet.java | 4 +- src-core/src/org/openbravo/buildvalidation/BuildValidationHandler.java | 5 ++- src-core/src/org/openbravo/database/ExternalConnectionPool.java | 13 +++------ src-core/src/org/openbravo/modulescript/ModuleScriptHandler.java | 4 +- src-wad/src/org/openbravo/wad/WadUtility.java | 11 ++++++- src/org/openbravo/authentication/AuthenticationManager.java | 2 +- src/org/openbravo/base/model/ModelProvider.java | 3 +- src/org/openbravo/base/model/Reference.java | 2 +- src/org/openbravo/base/provider/OBProvider.java | 4 +- src/org/openbravo/costing/CostingServer.java | 4 +- src/org/openbravo/erpCommon/ad_forms/AcctServer.java | 11 ++++--- src/org/openbravo/erpCommon/ad_forms/DocAmortization.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocBank.java | 5 ++- src/org/openbravo/erpCommon/ad_forms/DocCash.java | 5 ++- src/org/openbravo/erpCommon/ad_forms/DocCostAdjustment.java | 10 +++--- src/org/openbravo/erpCommon/ad_forms/DocDPManagement.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocDoubtfulDebt.java | 6 ++-- src/org/openbravo/erpCommon/ad_forms/DocFINBankStatement.java | 6 ++-- src/org/openbravo/erpCommon/ad_forms/DocFINFinAccTransaction.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocFINPayment.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocFINReconciliation.java | 6 ++-- src/org/openbravo/erpCommon/ad_forms/DocGLJournal.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocInOut.java | 5 ++- src/org/openbravo/erpCommon/ad_forms/DocInternalConsumption.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocInventory.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocInvoice.java | 8 +++--- src/org/openbravo/erpCommon/ad_forms/DocLCCost.java | 8 +++--- src/org/openbravo/erpCommon/ad_forms/DocLandedCost.java | 8 +++--- src/org/openbravo/erpCommon/ad_forms/DocMatchInv.java | 8 +++--- src/org/openbravo/erpCommon/ad_forms/DocMovement.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocOrder.java | 5 ++- src/org/openbravo/erpCommon/ad_forms/DocPayment.java | 4 +- src/org/openbravo/erpCommon/ad_forms/DocProduction.java | 4 +- src/org/openbravo/erpCommon/utility/GenericTreeServlet.java | 8 +++-- src/org/openbravo/erpCommon/utility/OBMessageUtils.java | 12 ++++---- src/org/openbravo/scheduling/DefaultJob.java | 4 +- 43 files changed, 131 insertions(+), 111 deletions(-) diffs (truncated from 1038 to 300 lines): diff -r 226c41af46d2 -r d526512e5e96 modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/ImportBankFile.java --- a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/ImportBankFile.java Fri Mar 09 15:28:54 2018 +0100 +++ b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/ad_actionbutton/ImportBankFile.java Fri Mar 09 14:18:48 2018 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2010-2011 Openbravo SLU + * All portions are Copyright (C) 2010-2018 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************* @@ -67,7 +67,8 @@ BankFileFormat bff = OBDal.getInstance().get(BankFileFormat.class, strBankFileFormat); FIN_BankStatementImport bsi = null; try { - bsi = (FIN_BankStatementImport) Class.forName(bff.getJavaClassName()).newInstance(); + bsi = (FIN_BankStatementImport) Class.forName(bff.getJavaClassName()) + .getDeclaredConstructor().newInstance(); } catch (Exception e) { log4j.error("Error while creating new instance for FIN_BankStatementImport - " + e, e); } diff -r 226c41af46d2 -r d526512e5e96 modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_ExecutePayment.java --- a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_ExecutePayment.java Fri Mar 09 15:28:54 2018 +0100 +++ b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_ExecutePayment.java Fri Mar 09 14:18:48 2018 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2010-2017 Openbravo SLU + * All portions are Copyright (C) 2010-2018 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************* @@ -88,14 +88,16 @@ else if ("CONSTANT".equals(parameter.getParameterType())) dao.getNewPaymentRunParameter(paymentRun, parameter, parameter.getDefaultTextValue()); try { - this.paymentExecutionProcess = (FIN_PaymentExecutionProcess) Class.forName( - executionProcess.getJavaClassName()).newInstance(); + this.paymentExecutionProcess = (FIN_PaymentExecutionProcess) Class + .forName(executionProcess.getJavaClassName()).getDeclaredConstructor().newInstance(); } catch (InstantiationException e) { throw new NoExecutionProcessFoundException(e); } catch (IllegalAccessException e) { throw new NoExecutionProcessFoundException(e); } catch (ClassNotFoundException e) { throw new NoExecutionProcessFoundException(e); + } catch (ReflectiveOperationException e) { + throw new NoExecutionProcessFoundException(e); } } diff -r 226c41af46d2 -r d526512e5e96 modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_MatchingTransaction.java --- a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_MatchingTransaction.java Fri Mar 09 15:28:54 2018 +0100 +++ b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_MatchingTransaction.java Fri Mar 09 14:18:48 2018 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2010-2011 Openbravo SLU + * All portions are Copyright (C) 2010-2018 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************* @@ -33,7 +33,8 @@ public FIN_MatchingTransaction(String _algorithm) throws NoAlgorithmFoundException { try { if (_algorithm != null && !_algorithm.equals("")) - this.algorithm = (FIN_MatchingAlgorithm) Class.forName(_algorithm).newInstance(); + this.algorithm = (FIN_MatchingAlgorithm) Class.forName(_algorithm).getDeclaredConstructor() + .newInstance(); else throw new NoAlgorithmFoundException( "No algorithm has been defined to match bank statement lines"); @@ -43,6 +44,8 @@ throw new NoAlgorithmFoundException(e); } catch (ClassNotFoundException e) { throw new NoAlgorithmFoundException(e); + } catch (ReflectiveOperationException e) { + throw new NoAlgorithmFoundException(e); } } diff -r 226c41af46d2 -r d526512e5e96 modules/org.openbravo.client.application/src/org/openbravo/client/application/OBBindings.java --- a/modules/org.openbravo.client.application/src/org/openbravo/client/application/OBBindings.java Fri Mar 09 15:28:54 2018 +0100 +++ b/modules/org.openbravo.client.application/src/org/openbravo/client/application/OBBindings.java Fri Mar 09 14:18:48 2018 +0100 @@ -286,7 +286,8 @@ .forName(className)); } catch (IllegalArgumentException e) { // try with OBClassLoader in case package is excluded by Weld - expr = (FilterExpression) OBClassLoader.getInstance().loadClass(className).newInstance(); + expr = (FilterExpression) OBClassLoader.getInstance().loadClass(className) + .getDeclaredConstructor().newInstance(); } return expr.getExpression(requestMap); } catch (Exception e) { diff -r 226c41af46d2 -r d526512e5e96 modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java --- a/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java Fri Mar 09 15:28:54 2018 +0100 +++ b/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/FormInitializationComponent.java Fri Mar 09 14:18:48 2018 +0100 @@ -1484,7 +1484,7 @@ calloutObject = calloutInstances.get(calloutClassName); isCalloutInitialized = true; } else { - calloutObject = calloutClass.newInstance(); + calloutObject = calloutClass.getDeclaredConstructor().newInstance(); calloutInstances.put(calloutClassName, calloutObject); } diff -r 226c41af46d2 -r d526512e5e96 modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/UIDefinitionController.java --- a/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/UIDefinitionController.java Fri Mar 09 15:28:54 2018 +0100 +++ b/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/UIDefinitionController.java Fri Mar 09 14:18:48 2018 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2009-2016 Openbravo SLU + * All portions are Copyright (C) 2009-2018 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************ @@ -184,7 +184,7 @@ if (uiDefinition.isActive()) { final Class<?> clz = OBClassLoader.getInstance().loadClass( uiDefinition.getImplementationClassname()); - return (UIDefinition) clz.newInstance(); + return (UIDefinition) clz.getDeclaredConstructor().newInstance(); } } } @@ -194,7 +194,7 @@ } // the default log.warn("No user interface definition found for reference " + reference); - return StringUIDefinition.class.newInstance(); + return StringUIDefinition.class.getDeclaredConstructor().newInstance(); } private synchronized Map<String, FormatDefinition> setInitializeComputeFormatDefinitions() { diff -r 226c41af46d2 -r d526512e5e96 modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DataSourceProperty.java --- a/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DataSourceProperty.java Fri Mar 09 15:28:54 2018 +0100 +++ b/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DataSourceProperty.java Fri Mar 09 14:18:48 2018 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2010-2015 Openbravo SLU + * All portions are Copyright (C) 2010-2018 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************ @@ -204,7 +204,7 @@ private static DomainType getDomainType(Reference reference) { try { final Class<?> clz = OBClassLoader.getInstance().loadClass(reference.getModelImpl()); - final DomainType domainType = (DomainType) clz.newInstance(); + final DomainType domainType = (DomainType) clz.getDeclaredConstructor().newInstance(); // can't be set // note for our purpose this not need to be set // domainType.setReference(reference); diff -r 226c41af46d2 -r d526512e5e96 src-core/src/org/openbravo/base/HttpBaseServlet.java --- a/src-core/src/org/openbravo/base/HttpBaseServlet.java Fri Mar 09 15:28:54 2018 +0100 +++ b/src-core/src/org/openbravo/base/HttpBaseServlet.java Fri Mar 09 14:18:48 2018 +0100 @@ -1,6 +1,6 @@ /* ************************************************************************************ - * Copyright (C) 2001-2016 Openbravo S.L.U. + * Copyright (C) 2001-2018 Openbravo S.L.U. * Licensed under the Apache Software License version 2.0 * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software distributed @@ -645,7 +645,7 @@ parserClassName = "org.apache.xerces.parsers.SAXParser"; } try { - return (XMLReader) Class.forName(parserClassName).newInstance(); + return (XMLReader) Class.forName(parserClassName).getDeclaredConstructor().newInstance(); } catch (Exception e) { throw new ServletException(e); } diff -r 226c41af46d2 -r d526512e5e96 src-core/src/org/openbravo/buildvalidation/BuildValidationHandler.java --- a/src-core/src/org/openbravo/buildvalidation/BuildValidationHandler.java Fri Mar 09 15:28:54 2018 +0100 +++ b/src-core/src/org/openbravo/buildvalidation/BuildValidationHandler.java Fri Mar 09 14:18:48 2018 +0100 @@ -1,6 +1,6 @@ /* ************************************************************************************ - * Copyright (C) 2010-2016 Openbravo S.L.U. + * Copyright (C) 2010-2018 Openbravo S.L.U. * Licensed under the Apache Software License version 2.0 * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software distributed @@ -86,7 +86,8 @@ try { Class<?> myClass = Class.forName(s); if (BuildValidation.class.isAssignableFrom(myClass)) { - BuildValidation instance = (BuildValidation) myClass.newInstance(); + BuildValidation instance = (BuildValidation) myClass.getDeclaredConstructor() + .newInstance(); instance.preExecute(modulesVersionMap); errors = instance.getErrors(); } diff -r 226c41af46d2 -r d526512e5e96 src-core/src/org/openbravo/database/ExternalConnectionPool.java --- a/src-core/src/org/openbravo/database/ExternalConnectionPool.java Fri Mar 09 15:28:54 2018 +0100 +++ b/src-core/src/org/openbravo/database/ExternalConnectionPool.java Fri Mar 09 14:18:48 2018 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2014-2016 Openbravo SLU + * All portions are Copyright (C) 2014-2018 Openbravo SLU * All Rights Reserved. ************************************************************************ */ @@ -39,16 +39,13 @@ * @param externalConnectionPoolClassName * The full class name of the external connection pool * @return An instance of the external connection pool - * @throws InstantiationException - * @throws IllegalAccessException - * @throws ClassNotFoundException + * @throws ReflectiveOperationException */ - public final synchronized static ExternalConnectionPool getInstance( - String externalConnectionPoolClassName) throws InstantiationException, - IllegalAccessException, ClassNotFoundException { + public static final synchronized ExternalConnectionPool getInstance( + String externalConnectionPoolClassName) throws ReflectiveOperationException { if (instance == null) { instance = (ExternalConnectionPool) Class.forName(externalConnectionPoolClassName) - .newInstance(); + .getDeclaredConstructor().newInstance(); } return instance; } diff -r 226c41af46d2 -r d526512e5e96 src-core/src/org/openbravo/modulescript/ModuleScriptHandler.java --- a/src-core/src/org/openbravo/modulescript/ModuleScriptHandler.java Fri Mar 09 15:28:54 2018 +0100 +++ b/src-core/src/org/openbravo/modulescript/ModuleScriptHandler.java Fri Mar 09 14:18:48 2018 +0100 @@ -1,6 +1,6 @@ /* ************************************************************************************ - * Copyright (C) 2010-2015 Openbravo S.L.U. + * Copyright (C) 2010-2018 Openbravo S.L.U. * Licensed under the Apache Software License version 2.0 * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 * Unless required by applicable law or agreed to in writing, software distributed @@ -60,7 +60,7 @@ try { Class<?> myClass = Class.forName(s); if (ModuleScript.class.isAssignableFrom(myClass)) { - ModuleScript instance = (ModuleScript) myClass.newInstance(); + ModuleScript instance = (ModuleScript) myClass.getDeclaredConstructor().newInstance(); instance.preExecute(getModulesVersionMap()); } } catch (Exception e) { diff -r 226c41af46d2 -r d526512e5e96 src-wad/src/org/openbravo/wad/WadUtility.java --- a/src-wad/src/org/openbravo/wad/WadUtility.java Fri Mar 09 15:28:54 2018 +0100 +++ b/src-wad/src/org/openbravo/wad/WadUtility.java Fri Mar 09 14:18:48 2018 +0100 @@ -11,7 +11,7 @@ * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU - * All portions are Copyright (C) 2001-2017 Openbravo SLU + * All portions are Copyright (C) 2001-2018 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************ @@ -22,6 +22,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; +import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.Map; import java.util.Properties; @@ -442,7 +443,7 @@ } else { try { Class<?> c = Class.forName(classname); - control = (WADControl) c.newInstance(); + control = (WADControl) c.getDeclaredConstructor().newInstance(); control.setReference(parentRef); control.setSubreference(subRef); } catch (ClassNotFoundException ex) { @@ -455,6 +456,12 @@ } catch (IllegalAccessException e) { log4j.warn("Illegal access class: " + classname); control = new WADControl(); + } catch (InvocationTargetException e) { + log4j.warn("Exception thrown by default constructor of class: " + classname); + control = new WADControl(); + } catch (NoSuchMethodException e) { + log4j.warn("Could not find a default constructor for class: " + classname); + control = new WADControl(); } } return control; diff -r 226c41af46d2 -r d526512e5e96 src/org/openbravo/authentication/AuthenticationManager.java --- a/src/org/openbravo/authentication/AuthenticationManager.java Fri Mar 09 15:28:54 2018 +0100 +++ b/src/org/openbravo/authentication/AuthenticationManager.java Fri Mar 09 14:18:48 2018 +0100 @@ -112,7 +112,7 @@ ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits