From 497458059e7bb44a5f1af08e4b1d57aea02a0324 Mon Sep 17 00:00:00 2001 From: baka Date: Wed, 25 Oct 2017 13:26:01 +0000 Subject: [PATCH] Replaces the simple calls with no arguments to newInstance() git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@5078 8810af33-2d31-482b-a856-94f89814c4df Former-commit-id: a78c71fa2013b83893d944611c5ecbf0f6d97a1d --- .../com/arsdigita/cms/dispatcher/CMSPage.java | 5 ++- .../arsdigita/cms/ui/CMSApplicationPage.java | 2 +- .../librecms/contentsection/AssetManager.java | 2 +- .../librecms/lifecycle/LifecycleManager.java | 4 +- .../org/librecms/workflow/CmsTaskManager.java | 2 +- .../dispatcher/BaseDispatcherServlet.java | 5 ++- .../kernel/ui/ACSObjectSelectionModel.java | 5 ++- .../com/arsdigita/templating/XSLTemplate.java | 6 ++- .../ui/admin/SystemInformationTab.java | 26 +++++++++--- .../main/java/com/arsdigita/xml/Document.java | 38 ++++++++++------- .../main/java/com/arsdigita/xml/Element.java | 9 +++- .../src/main/java/com/arsdigita/xml/XML.java | 5 ++- .../configuration/ConfigurationManager.java | 6 ++- .../ui/admin/sysinfo/SysInfoController.java | 42 +++++++++++-------- .../libreccm/workflow/WorkflowManager.java | 4 +- .../org/libreccm/core/EntitiesTestCore.java | 2 +- .../resources/themes/foundry/doc/index.jsp | 2 +- 17 files changed, 109 insertions(+), 56 deletions(-) diff --git a/ccm-cms/src/main/java/com/arsdigita/cms/dispatcher/CMSPage.java b/ccm-cms/src/main/java/com/arsdigita/cms/dispatcher/CMSPage.java index 915048cc1..35c1fab3f 100755 --- a/ccm-cms/src/main/java/com/arsdigita/cms/dispatcher/CMSPage.java +++ b/ccm-cms/src/main/java/com/arsdigita/cms/dispatcher/CMSPage.java @@ -35,6 +35,7 @@ import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import java.io.IOException; +import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import javax.servlet.ServletException; @@ -137,8 +138,8 @@ public class CMSPage extends Page implements ResourceHandler { final Class presenterClass = BebopConfig.getConfig().getPresenterClass(); final PresentationManager pm; try { - pm = presenterClass.newInstance(); - } catch (InstantiationException | IllegalAccessException ex) { + pm = presenterClass.getDeclaredConstructor().newInstance(); + } catch (InstantiationException | IllegalAccessException | InvocationTargetException | NoSuchMethodException ex) { throw new RuntimeException(ex); } diff --git a/ccm-cms/src/main/java/com/arsdigita/cms/ui/CMSApplicationPage.java b/ccm-cms/src/main/java/com/arsdigita/cms/ui/CMSApplicationPage.java index 744d787ce..39c6de103 100644 --- a/ccm-cms/src/main/java/com/arsdigita/cms/ui/CMSApplicationPage.java +++ b/ccm-cms/src/main/java/com/arsdigita/cms/ui/CMSApplicationPage.java @@ -133,7 +133,7 @@ public class CMSApplicationPage extends Page { .getConfig().getPresenterClass(); final PresentationManager presenter; try { - presenter = presenterClass.newInstance(); + presenter = presenterClass.class.getDeclaredConstructor().newInstance(); } catch (InstantiationException | IllegalAccessException ex) { throw new RuntimeException("Failed to create PresentationManager", diff --git a/ccm-cms/src/main/java/org/librecms/contentsection/AssetManager.java b/ccm-cms/src/main/java/org/librecms/contentsection/AssetManager.java index e97598cc9..e438d9a29 100644 --- a/ccm-cms/src/main/java/org/librecms/contentsection/AssetManager.java +++ b/ccm-cms/src/main/java/org/librecms/contentsection/AssetManager.java @@ -108,7 +108,7 @@ public class AssetManager { final T asset; try { - asset = assetType.newInstance(); + asset = assetType.class.getDeclaredConstructor().newInstance(); } catch (IllegalAccessException | InstantiationException ex) { throw new UnexpectedErrorException(ex); } diff --git a/ccm-cms/src/main/java/org/librecms/lifecycle/LifecycleManager.java b/ccm-cms/src/main/java/org/librecms/lifecycle/LifecycleManager.java index 432f0fea5..5a3b5966a 100644 --- a/ccm-cms/src/main/java/org/librecms/lifecycle/LifecycleManager.java +++ b/ccm-cms/src/main/java/org/librecms/lifecycle/LifecycleManager.java @@ -230,7 +230,7 @@ public class LifecycleManager { final Object object; try { - object = listenerClass.newInstance(); + object = listenerClass.class.getDeclaredConstructor().newInstance(); } catch (IllegalAccessException | InstantiationException ex) { LOGGER.error("Failed to create instance of LifecycleEventListener " @@ -275,7 +275,7 @@ public class LifecycleManager { final Object object; try { - object = listenerClass.newInstance(); + object = listenerClass.class.getDeclaredConstructor().newInstance(); } catch (IllegalAccessException | InstantiationException ex) { LOGGER.error("Failed to create instance of PhaseEventListener " diff --git a/ccm-cms/src/main/java/org/librecms/workflow/CmsTaskManager.java b/ccm-cms/src/main/java/org/librecms/workflow/CmsTaskManager.java index 3c6e02190..a72622fbb 100644 --- a/ccm-cms/src/main/java/org/librecms/workflow/CmsTaskManager.java +++ b/ccm-cms/src/main/java/org/librecms/workflow/CmsTaskManager.java @@ -45,7 +45,7 @@ public class CmsTaskManager { .getTaskType().getUrlGenerator(); final TaskURLGenerator urlGenerator; try { - urlGenerator = urlGeneratorClass.newInstance(); + urlGenerator = urlGeneratorClass.class.getDeclaredConstructor().newInstance(); } catch (IllegalAccessException | InstantiationException ex) { throw new UnexpectedErrorException(ex); diff --git a/ccm-core/src/main/java/com/arsdigita/dispatcher/BaseDispatcherServlet.java b/ccm-core/src/main/java/com/arsdigita/dispatcher/BaseDispatcherServlet.java index 9ef505644..5ea982dd9 100755 --- a/ccm-core/src/main/java/com/arsdigita/dispatcher/BaseDispatcherServlet.java +++ b/ccm-core/src/main/java/com/arsdigita/dispatcher/BaseDispatcherServlet.java @@ -24,6 +24,7 @@ import com.arsdigita.web.RedirectSignal; import java.io.File; import java.io.IOException; import java.io.StringReader; +import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.List; import java.util.Vector; @@ -154,7 +155,7 @@ public abstract class BaseDispatcherServlet extends HttpServlet File file = new File(getServletContext().getRealPath( "/WEB-INF/web.xml")); // all we care about is the welcome-file-list element - SAXParserFactory spf = SAXParserFactory.newInstance(); + SAXParserFactory spf = SAXParserFactory.class.getDeclaredConstructor().newInstance(); spf.setValidating(false); SAXParser parser = spf.newSAXParser(); parser.parse(file, new WebXMLReader()); @@ -164,6 +165,8 @@ public abstract class BaseDispatcherServlet extends HttpServlet LOGGER.error("error in init", pce); } catch (IOException ioe) { LOGGER.error("error in init", ioe); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + LOGGER.error(e); } // default to index.jsp, index.html if (m_welcomeFiles.isEmpty()) { diff --git a/ccm-core/src/main/java/com/arsdigita/kernel/ui/ACSObjectSelectionModel.java b/ccm-core/src/main/java/com/arsdigita/kernel/ui/ACSObjectSelectionModel.java index 0b9756697..cfaafa068 100755 --- a/ccm-core/src/main/java/com/arsdigita/kernel/ui/ACSObjectSelectionModel.java +++ b/ccm-core/src/main/java/com/arsdigita/kernel/ui/ACSObjectSelectionModel.java @@ -30,6 +30,7 @@ import com.arsdigita.bebop.parameters.LongParameter; import com.arsdigita.util.Assert; import com.arsdigita.util.UncheckedWrapperException; +import java.lang.reflect.InvocationTargetException; import java.math.BigDecimal; import javax.servlet.ServletException; @@ -338,9 +339,9 @@ public class ACSObjectSelectionModel implements SingleSelectionModel { Assert.exists(javaClassName, Class.class); try { - final CcmObject object = (CcmObject) javaClassName.newInstance(); + final CcmObject object = (CcmObject) javaClassName.getDeclaredConstructor().newInstance(); return object; - } catch (InstantiationException | IllegalAccessException ex) { + } catch (InstantiationException | IllegalAccessException | InvocationTargetException | NoSuchMethodException ex) { throw new ServletException(ex); } } diff --git a/ccm-core/src/main/java/com/arsdigita/templating/XSLTemplate.java b/ccm-core/src/main/java/com/arsdigita/templating/XSLTemplate.java index c9c1113ac..6cd20c8ad 100755 --- a/ccm-core/src/main/java/com/arsdigita/templating/XSLTemplate.java +++ b/ccm-core/src/main/java/com/arsdigita/templating/XSLTemplate.java @@ -26,6 +26,7 @@ import java.io.PrintWriter; import java.io.OutputStream; import java.io.IOException; +import java.lang.reflect.InvocationTargetException; import java.net.URL; import java.util.Date; import java.util.Iterator; @@ -97,7 +98,7 @@ public final class XSLTemplate { try { LOGGER.debug("Getting new templates object"); - final TransformerFactory factory = TransformerFactory.newInstance(); + final TransformerFactory factory = TransformerFactory.class.getDeclaredConstructor().newInstance(); factory.setURIResolver(resolver); factory.setErrorListener(listener); @@ -109,6 +110,9 @@ public final class XSLTemplate { throw new WrappedTransformerException(ex); } catch (TransformerException ex) { throw new WrappedTransformerException(ex); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + LOGGER.error(e); + throw new RuntimeException(e); } // List contains each include/import URL found in the style sheet diff --git a/ccm-core/src/main/java/com/arsdigita/ui/admin/SystemInformationTab.java b/ccm-core/src/main/java/com/arsdigita/ui/admin/SystemInformationTab.java index e9be96dfb..d088fe8b9 100644 --- a/ccm-core/src/main/java/com/arsdigita/ui/admin/SystemInformationTab.java +++ b/ccm-core/src/main/java/com/arsdigita/ui/admin/SystemInformationTab.java @@ -27,6 +27,8 @@ import com.arsdigita.globalization.GlobalizedMessage; import com.arsdigita.toolbox.ui.LayoutPanel; import com.arsdigita.util.LockableImpl; import com.arsdigita.util.SystemInformation; + +import java.lang.reflect.InvocationTargetException; import java.util.Enumeration; import java.util.Iterator; import java.util.Map; @@ -251,29 +253,41 @@ public class SystemInformationTab extends LayoutPanel { public String getValue() { switch (currentIndex) { case TRANSFORMER_FACTORY_INDEX: - return TransformerFactory.newInstance().getClass().getName(); + try { + return TransformerFactory.class.getDeclaredConstructor().newInstance().getClass().getName(); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + } case TRANSFORMER_INDEX: try { - return TransformerFactory.newInstance().newTransformer().getClass().getName(); + return TransformerFactory.class.getDeclaredConstructor().newInstance().newTransformer().getClass().getName(); } catch(TransformerConfigurationException ex) { return "???"; + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { } case DOCUMENT_BUILDER_FACTORY_INDEX: - return DocumentBuilderFactory.newInstance().getClass().getName(); + try { + return DocumentBuilderFactory.class.getDeclaredConstructor().newInstance().getClass().getName(); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + } case DOCUMENT_BUILDER_INDEX: try{ - return DocumentBuilderFactory.newInstance().newDocumentBuilder().getClass() + return DocumentBuilderFactory.class.getDeclaredConstructor().newInstance().newDocumentBuilder().getClass() .getName(); } catch(ParserConfigurationException ex) { return "???"; + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { } case SAX_PARSER_FACTORY_INDEX: - return SAXParserFactory.newInstance().getClass().getName(); + try { + return SAXParserFactory.class.getDeclaredConstructor().newInstance().getClass().getName(); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + } case SAX_PARSER_INDEX: try { - return SAXParserFactory.newInstance().newSAXParser().getClass().getName(); + return SAXParserFactory.class.getDeclaredConstructor().newInstance().newSAXParser().getClass().getName(); } catch(ParserConfigurationException | SAXException ex) { return "???"; + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { } default: return ""; diff --git a/ccm-core/src/main/java/com/arsdigita/xml/Document.java b/ccm-core/src/main/java/com/arsdigita/xml/Document.java index f4198cb02..214521fd3 100644 --- a/ccm-core/src/main/java/com/arsdigita/xml/Document.java +++ b/ccm-core/src/main/java/com/arsdigita/xml/Document.java @@ -34,6 +34,7 @@ import javax.xml.transform.stream.StreamSource; import javax.xml.transform.stream.StreamResult; import java.io.UnsupportedEncodingException; +import java.lang.reflect.InvocationTargetException; /** * A wrapper class that implements some functionality of @@ -41,7 +42,7 @@ import java.io.UnsupportedEncodingException; * * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * pboy (Jan. 09) - * Class uses "DocumentBuilderFactory.newInstance()" to setup the parser + * Class uses "DocumentBuilderFactory.class.getDeclaredConstructor().newInstance()" to setup the parser * (according to the javax.xml specification). This is a simple and * straightforward, but rather thumb method. It requires a JVM wide acceptable * configuration (using a system.property or a static JRE configuration file) and @@ -116,21 +117,25 @@ public class Document { // instead to achieve independence from a JVM wide configuration. // Requires additional modifications in c.ad.util.xml.XML static { - LOGGER.debug("Static initalizer starting..."); - s_builder = DocumentBuilderFactory.newInstance(); - s_builder.setNamespaceAware(true); - s_db = new ThreadLocal() { + try { + LOGGER.debug("Static initalizer starting..."); + s_builder = DocumentBuilderFactory.class.getDeclaredConstructor().newInstance(); + s_builder.setNamespaceAware(true); + s_db = new ThreadLocal() { - @Override - public Object initialValue() { - try { - return s_builder.newDocumentBuilder(); - } catch (ParserConfigurationException pce) { - return null; + @Override + public Object initialValue() { + try { + return s_builder.newDocumentBuilder(); + } catch (ParserConfigurationException pce) { + return null; + } } - } - }; - LOGGER.debug("Static initalized finished."); + }; + LOGGER.debug("Static initalized finished."); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + LOGGER.error(e); + } } /* Used to build the DOM Documents that this class wraps */ @@ -311,7 +316,7 @@ public class Document { try { StreamSource identitySource = new StreamSource(new StringReader(identityXSL)); - identity = TransformerFactory.newInstance().newTransformer( + identity = TransformerFactory.class.getDeclaredConstructor().newInstance().newTransformer( identitySource); identity.setOutputProperty("method", "xml"); identity.setOutputProperty("indent", (indent ? "yes" : "no")); @@ -320,6 +325,9 @@ public class Document { } catch (javax.xml.transform.TransformerException e) { LOGGER.error("error in toString", e); return document.toString(); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + LOGGER.error(e); + return null; // This shouldn't be possible } try { diff --git a/ccm-core/src/main/java/com/arsdigita/xml/Element.java b/ccm-core/src/main/java/com/arsdigita/xml/Element.java index 5424ce3b1..8c04368be 100644 --- a/ccm-core/src/main/java/com/arsdigita/xml/Element.java +++ b/ccm-core/src/main/java/com/arsdigita/xml/Element.java @@ -20,10 +20,13 @@ package com.arsdigita.xml; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; + import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import com.arsdigita.util.Assert; import com.arsdigita.util.UncheckedWrapperException; + +import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.Collections; import java.util.Date; @@ -32,6 +35,7 @@ import java.util.List; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.Attr; + /** * A wrapper class that implements some functionality of * org.jdom.Element using org.w3c.dom.Element. @@ -56,7 +60,7 @@ public class Element { public Object initialValue() { try { DocumentBuilderFactory builder = - DocumentBuilderFactory.newInstance(); + DocumentBuilderFactory.class.getDeclaredConstructor().newInstance(); builder.setNamespaceAware(true); return builder.newDocumentBuilder().newDocument(); } catch (ParserConfigurationException e) { @@ -64,6 +68,9 @@ public class Element { throw new UncheckedWrapperException( "INTERNAL: Could not create thread local DOM document.", e); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + LOGGER.error(e); + return null; // This shouldn't be possible } } diff --git a/ccm-core/src/main/java/com/arsdigita/xml/XML.java b/ccm-core/src/main/java/com/arsdigita/xml/XML.java index c8e0864ce..cf93eebb9 100644 --- a/ccm-core/src/main/java/com/arsdigita/xml/XML.java +++ b/ccm-core/src/main/java/com/arsdigita/xml/XML.java @@ -28,6 +28,7 @@ import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.io.StringWriter; +import java.lang.reflect.InvocationTargetException; import java.util.Date; import java.util.HashMap; import java.util.Iterator; @@ -203,7 +204,7 @@ public class XML { // configuration (affecting all CCM instances which may run in a // container). // Requires additional modifications in c.ad.util.xml.XML - SAXParserFactory spf = SAXParserFactory.newInstance(); + SAXParserFactory spf = SAXParserFactory.class.getDeclaredConstructor().newInstance(); spf.setFeature("http://xml.org/sax/features/namespaces", true); SAXParser parser = spf.newSAXParser(); parser.parse(source, handler); @@ -218,6 +219,8 @@ public class XML { } } catch (IOException e) { throw new UncheckedWrapperException("error parsing stream", e); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + LOGGER.error(e); } } diff --git a/ccm-core/src/main/java/org/libreccm/configuration/ConfigurationManager.java b/ccm-core/src/main/java/org/libreccm/configuration/ConfigurationManager.java index 292c61b86..f33c551f5 100644 --- a/ccm-core/src/main/java/org/libreccm/configuration/ConfigurationManager.java +++ b/ccm-core/src/main/java/org/libreccm/configuration/ConfigurationManager.java @@ -34,6 +34,7 @@ import javax.inject.Inject; import javax.transaction.Transactional; import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; import java.util.Arrays; import java.util.HashMap; import java.util.List; @@ -357,13 +358,16 @@ public class ConfigurationManager implements Serializable { final T conf; try { - conf = confClass.newInstance(); + conf = confClass.getDeclaredConstructor().newInstance(); } catch (InstantiationException | IllegalAccessException ex) { LOGGER.warn(String.format( "Failed to instantiate configuration \"%s\".", confClass.getName()), ex); return null; + } catch (InvocationTargetException | NoSuchMethodException e) { + LOGGER.error(e); + return null; } final List settingList = settingManager diff --git a/ccm-core/src/main/java/org/libreccm/ui/admin/sysinfo/SysInfoController.java b/ccm-core/src/main/java/org/libreccm/ui/admin/sysinfo/SysInfoController.java index b9868cc7e..c1c4c29ad 100644 --- a/ccm-core/src/main/java/org/libreccm/ui/admin/sysinfo/SysInfoController.java +++ b/ccm-core/src/main/java/org/libreccm/ui/admin/sysinfo/SysInfoController.java @@ -29,6 +29,7 @@ import javax.xml.transform.TransformerConfigurationException; import javax.xml.transform.TransformerFactory; import java.io.IOException; import java.io.InputStream; +import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.List; import java.util.Properties; @@ -79,47 +80,54 @@ public class SysInfoController { final ResourceBundle texts = ResourceBundle.getBundle( "com.arsdigita.ui.admin.AdminResources"); - - xmlProps.add(new SysInfoProperty( - texts.getString("ui.admin.sysinfo.xml_transformer_factory"), - TransformerFactory.newInstance().getClass().getName())); + try { + xmlProps.add(new SysInfoProperty( + texts.getString("ui.admin.sysinfo.xml_transformer_factory"), + TransformerFactory.class.getDeclaredConstructor().newInstance().getClass().getName())); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + } try { xmlProps.add(new SysInfoProperty( texts.getString("ui.admin.sysinfo.xml_transformer"), - TransformerFactory.newInstance().newTransformer().getClass() + TransformerFactory.class.getDeclaredConstructor().newInstance().newTransformer().getClass() .getName())); } catch (TransformerConfigurationException ex) { xmlProps.add(new SysInfoProperty( texts.getString("ui.admin.sysinfo.xml_transformer"), "???")); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + } + try { + xmlProps.add(new SysInfoProperty( + texts.getString("ui.admin.sysinfo.xml_document_builder_factory"), + DocumentBuilderFactory.class.getDeclaredConstructor().newInstance().getClass().getName())); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { } - - xmlProps.add(new SysInfoProperty( - texts.getString("ui.admin.sysinfo.xml_document_builder_factory"), - DocumentBuilderFactory.newInstance().getClass().getName())); - try { xmlProps.add(new SysInfoProperty( texts.getString("ui.admin.sysinfo.xml_document_builder"), - DocumentBuilderFactory.newInstance().newDocumentBuilder() + DocumentBuilderFactory.class.getDeclaredConstructor().newInstance().newDocumentBuilder() .getClass().getName())); } catch (ParserConfigurationException ex) { xmlProps.add(new SysInfoProperty( texts.getString("ui.admin.sysinfo.xml_document_builder"), "???")); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { + } + try { + xmlProps.add(new SysInfoProperty( + texts.getString("ui.admin.sysinfo.sax_parser_factory"), + SAXParserFactory.class.getDeclaredConstructor().newInstance().getClass().getName())); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { } - - xmlProps.add(new SysInfoProperty( - texts.getString("ui.admin.sysinfo.sax_parser_factory"), - SAXParserFactory.newInstance().getClass().getName())); - try { xmlProps.add(new SysInfoProperty( texts.getString("ui.admin.sysinfo.sax_parser"), - SAXParserFactory.newInstance().newSAXParser().getClass() + SAXParserFactory.class.getDeclaredConstructor().newInstance().newSAXParser().getClass() .getName())); } catch (ParserConfigurationException | SAXException ex) { xmlProps.add(new SysInfoProperty( texts.getString("ui.admin.sysinfo.sax_parser"), "???")); + } catch (IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException e) { } return xmlProps; diff --git a/ccm-core/src/main/java/org/libreccm/workflow/WorkflowManager.java b/ccm-core/src/main/java/org/libreccm/workflow/WorkflowManager.java index c84e3e606..b5059293a 100644 --- a/ccm-core/src/main/java/org/libreccm/workflow/WorkflowManager.java +++ b/ccm-core/src/main/java/org/libreccm/workflow/WorkflowManager.java @@ -185,8 +185,8 @@ public class WorkflowManager { final Class templateClass = template.getClass(); final Task task; try { - task = templateClass.newInstance(); - } catch (InstantiationException | IllegalAccessException ex) { + task = templateClass.getDeclaredConstructor().newInstance(); + } catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException ex) { throw new RuntimeException(ex); } diff --git a/ccm-core/src/test/java/org/libreccm/core/EntitiesTestCore.java b/ccm-core/src/test/java/org/libreccm/core/EntitiesTestCore.java index 10e553ad1..207871aa2 100644 --- a/ccm-core/src/test/java/org/libreccm/core/EntitiesTestCore.java +++ b/ccm-core/src/test/java/org/libreccm/core/EntitiesTestCore.java @@ -47,7 +47,7 @@ public class EntitiesTestCore { IllegalAccessException, IllegalArgumentException, InvocationTargetException { - final Object obj = entityClass.newInstance(); + final Object obj = entityClass.class.getDeclaredConstructor().newInstance(); final Field[] fields = entityClass.getDeclaredFields(); for (Field field : fields) { diff --git a/ccm-theme-foundry/src/main/resources/themes/foundry/doc/index.jsp b/ccm-theme-foundry/src/main/resources/themes/foundry/doc/index.jsp index 15bcdbfc9..5b0922160 100644 --- a/ccm-theme-foundry/src/main/resources/themes/foundry/doc/index.jsp +++ b/ccm-theme-foundry/src/main/resources/themes/foundry/doc/index.jsp @@ -33,7 +33,7 @@ response.getOutputStream().print("requestURI = " + request.getRequestURI()); response.getOutputStream().print("requestURL = " + request.getRequestURL());*/ - TransformerFactory factory = TransformerFactory.newInstance(); + TransformerFactory factory = TransformerFactory.class.getDeclaredConstructor().newInstance(); Transformer transformer = factory.newTransformer(new StreamSource(themeURL + "/start.xsl")); transformer.setParameter("theme-prefix", themeURL); transformer.transform(new StreamSource(themeURL + "/doc/foundry-documentation.xml"),