Makefile.fetch                                                                 
                      |    1 
 RepositoryExternal.mk                                                          
                      |   26 
 config_host.mk.in                                                              
                      |    3 
 configure.ac                                                                   
                      |   40 
 distro-configs/LibreOfficeFlatpak.conf                                         
                      |    1 
 download.lst                                                                   
                      |    2 
 external/Module_external.mk                                                    
                      |    1 
 external/apache-commons/ExternalPackage_apache_commons_logging.mk              
                      |   16 
 external/apache-commons/ExternalProject_apache_commons_logging.mk              
                      |   29 
 external/apache-commons/Makefile                                               
                      |    7 
 external/apache-commons/Module_apache-commons.mk                               
                      |   18 
 external/apache-commons/README                                                 
                      |    1 
 external/apache-commons/UnpackedTarball_apache_commons_logging.mk              
                      |   22 
 external/apache-commons/patches/logging.patch                                  
                      |   46 
 external/breakpad/SIGSTKSZ.patch                                               
                      |   11 
 external/breakpad/UnpackedTarball_breakpad.mk                                  
                      |    1 
 external/gpgmepp/UnpackedTarball_gpgmepp.mk                                    
                      |    1 
 external/gpgmepp/gpgme.git-4b64774b6d13ffa4f59dddf947a97d61bcfa2f2e.patch.1    
                      |   32 
 external/jfreereport/ExternalProject_jfreereport_flow_engine.mk                
                      |    3 
 external/jfreereport/ExternalProject_jfreereport_liblayout.mk                  
                      |    7 
 external/jfreereport/UnpackedTarball_jfreereport_flow_engine.mk                
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_libbase.mk                    
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_libfonts.mk                   
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_libformula.mk                 
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_liblayout.mk                  
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_libloader.mk                  
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_librepository.mk              
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_libserializer.mk              
                      |    1 
 external/jfreereport/UnpackedTarball_jfreereport_libxml.mk                     
                      |    1 
 external/jfreereport/patches/flow-engine.patch                                 
                      |    3 
 external/jfreereport/patches/libbase-1.1.3-remove-commons-logging.patch.1      
                      |  903 ++++++++++
 external/jfreereport/patches/libfonts-1.1.3-remove-commons-logging.patch.1     
                      |  506 +++++
 external/jfreereport/patches/libformula-1.1.3-remove-commons-logging.patch.1   
                      |  266 ++
 external/jfreereport/patches/liblayout-0.2.10-remove-commons-logging.patch.1   
                      |  860 +++++++++
 external/jfreereport/patches/liblayout.patch                                   
                      |    3 
 external/jfreereport/patches/libloader-1.1.3-remove-commons-logging.patch.1    
                      |  635 +++++++
 
external/jfreereport/patches/librepository-1.1.3-remove-commons-logging.patch.1 
                     |  117 +
 
external/jfreereport/patches/libserializer-1.1.2-remove-commons-logging.patch.1 
                     |   31 
 external/jfreereport/patches/libxml-1.1.3-remove-commons-logging.patch.1       
                      |  313 +++
 
external/jfreereport/patches/pentaho-reporting-flow-engine-0.9.4-remove-commons-logging.patch.1
      |  101 +
 readlicense_oo/license/NOTICE                                                  
                      |    8 
 reportbuilder/Jar_reportbuilder.mk                                             
                      |    1 
 reportbuilder/java/org/libreoffice/report/SDBCReportDataFactory.java           
                      |    7 
 reportbuilder/java/org/libreoffice/report/StorageRepository.java               
                      |   48 
 reportbuilder/java/org/libreoffice/report/pentaho/Manifest.mf                  
                      |    2 
 reportbuilder/java/org/libreoffice/report/pentaho/PentahoReportJob.java        
                      |   10 
 reportbuilder/java/org/libreoffice/report/pentaho/SOReportJobFactory.java      
                      |    9 
 
reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java
            |    2 
 
reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormattedTextLayoutController.java
 |    7 
 
reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/ImageElementLayoutController.java
  |   19 
 reportbuilder/java/org/libreoffice/report/pentaho/output/ImageProducer.java    
                      |   23 
 
reportbuilder/java/org/libreoffice/report/pentaho/output/OfficeDocumentReportTarget.java
             |   23 
 reportbuilder/java/org/libreoffice/report/pentaho/output/OleProducer.java      
                      |   12 
 reportbuilder/java/org/libreoffice/report/pentaho/output/StyleUtilities.java   
                      |   10 
 
reportbuilder/java/org/libreoffice/report/pentaho/output/spreadsheet/SpreadsheetRawReportTarget.java
 |    2 
 
reportbuilder/java/org/libreoffice/report/pentaho/parser/office/DocumentContentReadHandler.java
      |   13 
 solenv/flatpak-manifest.in                                                     
                      |    6 
 svx/source/dialog/crashreportdlg.cxx                                           
                      |    2 
 svx/source/dialog/crashreportdlg.hxx                                           
                      |    1 
 svx/uiconfig/ui/crashreportdlg.ui                                              
                      |   22 
 swext/mediawiki/src/THIRDPARTYLICENSEREADME.html                               
                      |   16 
 61 files changed, 3871 insertions(+), 387 deletions(-)

New commits:
commit e016fdfbfb08da558f6d91672e9e0ed120c3f3ee
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Tue Apr 13 15:24:48 2021 +0200
Commit:     Thorsten Behrens <thorsten.behr...@allotropia.de>
CommitDate: Fri Jan 7 19:27:33 2022 +0100

    external/jfreereport: Get rid of remaining apache-commons-logging
    
    ...similar to b721a1cecb6ea0013be8402350110822e50b4415 
"external/jfreereport:
    Get rid of apache-commons-logging", but where the external tarballs contain
    copies of commons-logging-api-1.0.4.jar to compile against, so
    6de0b1710adfba82c96b75a5da6f52633a54c692 "Get rid of 
apache-commons-logging" did
    not affect them at build- but only at run-time.
    
    The sources of the seven new patch files (and which have further been 
adapted as
    necessary) are taken from
    
<https://src.fedoraproject.org/rpms/libbase/blob/4a8cd85e49a0a00d0e0f865a3c841e3f1858a04b>
    "Related: rhbz#1895921 replace apache-commons-logging with 
java.util.logging",
    
<https://src.fedoraproject.org/rpms/libfonts/c/c7f7d4ed67b9ca701152732cbdac547db3ada5f4>
    "Related: rhbz#1895921 replace apache-commons-logging with 
java.util.logging",
    
<https://src.fedoraproject.org/rpms/libformula/c/feb5be4b393f13b131623339a5868c6b381b2507>
    "Related: rhbz#1895921 replace apache-commons-logging with 
java.util.logging",
    
<https://src.fedoraproject.org/rpms/libloader/c/53eeb19460f2ab934cdf4c7c7c73fd681141216c>
    "Related: rhbz#1895921 replace apache-commons-logging with 
java.util.logging",
    
<https://src.fedoraproject.org/rpms/librepository/c/9fa7021dfe7dcc76e32c40f99f74c3745013c501>
    "Related: rhbz#1895921 replace apache-commons-logging with 
java.util.logging",
    
<https://src.fedoraproject.org/rpms/libserializer/c/027e1a16f7171f7ac5f9da4683d1e1b63794bb06>
    "Related: rhbz#1895921 replace apache-commons-logging with 
java.util.logging",
    and
    
<https://src.fedoraproject.org/rpms/pentaho-libxml/c/74538ea7cdd0845f8e6dff748f8d4abfe080dbe4>
    "add missing patch".
    
    Change-Id: I98bbe0e24398d3652cda09b0664b4775661cd939
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114053
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sberg...@redhat.com>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127199
    Tested-by: Gabor Kelemen <kelem...@ubuntu.com>
    Reviewed-by: Gabor Kelemen <kelem...@ubuntu.com>

diff --git a/external/jfreereport/UnpackedTarball_jfreereport_libbase.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_libbase.mk
index c3ba35190ede..46bb438aa58a 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_libbase.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_libbase.mk
@@ -21,6 +21,7 @@ $(eval $(call 
gb_UnpackedTarball_fix_end_of_line,jfreereport_libbase,\
 $(eval $(call gb_UnpackedTarball_add_patches,jfreereport_libbase,\
        external/jfreereport/patches/common_build.patch \
        
external/jfreereport/patches/libbase-$(LIBBASE_VERSION)-deprecated.patch \
+       
external/jfreereport/patches/libbase-1.1.3-remove-commons-logging.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/jfreereport/UnpackedTarball_jfreereport_libfonts.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_libfonts.mk
index b648c58bbef8..c45958505e96 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_libfonts.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_libfonts.mk
@@ -21,6 +21,7 @@ $(eval $(call 
gb_UnpackedTarball_fix_end_of_line,jfreereport_libfonts,\
 $(eval $(call gb_UnpackedTarball_add_patches,jfreereport_libfonts,\
        external/jfreereport/patches/common_build.patch \
        
external/jfreereport/patches/libfonts-$(LIBFONTS_VERSION)-deprecated.patch \
+       
external/jfreereport/patches/libfonts-1.1.3-remove-commons-logging.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk
index 59622966895a..13e8fcfaf640 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_libformula.mk
@@ -21,6 +21,7 @@ $(eval $(call 
gb_UnpackedTarball_add_patches,jfreereport_libformula,\
        external/jfreereport/patches/libformula-seconds_rounding.patch.1 \
        external/jfreereport/patches/libformula-minutes_truncation.patch.1 \
        external/jfreereport/patches/libformula-datevalue_truncation.patch.1 \
+       
external/jfreereport/patches/libformula-1.1.3-remove-commons-logging.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/jfreereport/UnpackedTarball_jfreereport_libloader.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_libloader.mk
index 7357ddd03ad9..6221dfa52b1b 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_libloader.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_libloader.mk
@@ -21,6 +21,7 @@ $(eval $(call 
gb_UnpackedTarball_fix_end_of_line,jfreereport_libloader,\
 $(eval $(call gb_UnpackedTarball_add_patches,jfreereport_libloader,\
        external/jfreereport/patches/common_build.patch \
        
external/jfreereport/patches/libloader-$(LIBLOADER_VERSION)-deprecated.patch \
+       
external/jfreereport/patches/libloader-1.1.3-remove-commons-logging.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/jfreereport/UnpackedTarball_jfreereport_librepository.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_librepository.mk
index 86ff991b9f3e..e1db29d02b3e 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_librepository.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_librepository.mk
@@ -21,6 +21,7 @@ $(eval $(call 
gb_UnpackedTarball_fix_end_of_line,jfreereport_librepository,\
 $(eval $(call gb_UnpackedTarball_add_patches,jfreereport_librepository,\
        external/jfreereport/patches/common_build.patch \
        
external/jfreereport/patches/librepository-$(LIBREPOSITORY_VERSION)-deprecated.patch
 \
+       
external/jfreereport/patches/librepository-1.1.3-remove-commons-logging.patch.1 
\
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/jfreereport/UnpackedTarball_jfreereport_libserializer.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_libserializer.mk
index 22d6d0cb7a2a..fb6f3d60c8da 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_libserializer.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_libserializer.mk
@@ -17,6 +17,7 @@ $(eval $(call 
gb_UnpackedTarball_fix_end_of_line,jfreereport_libserializer,\
 
 $(eval $(call gb_UnpackedTarball_add_patches,jfreereport_libserializer,\
        external/jfreereport/patches/common_build.patch \
+       
external/jfreereport/patches/libserializer-1.1.2-remove-commons-logging.patch.1 
\
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/jfreereport/UnpackedTarball_jfreereport_libxml.mk 
b/external/jfreereport/UnpackedTarball_jfreereport_libxml.mk
index ceca692adee2..7a920a873d4c 100644
--- a/external/jfreereport/UnpackedTarball_jfreereport_libxml.mk
+++ b/external/jfreereport/UnpackedTarball_jfreereport_libxml.mk
@@ -17,6 +17,7 @@ $(eval $(call 
gb_UnpackedTarball_fix_end_of_line,jfreereport_libxml,\
 
 $(eval $(call gb_UnpackedTarball_add_patches,jfreereport_libxml,\
        external/jfreereport/patches/common_build.patch \
+       
external/jfreereport/patches/libxml-1.1.3-remove-commons-logging.patch.1 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git 
a/external/jfreereport/patches/libbase-1.1.3-remove-commons-logging.patch.1 
b/external/jfreereport/patches/libbase-1.1.3-remove-commons-logging.patch.1
new file mode 100644
index 000000000000..8d0df70a96df
--- /dev/null
+++ b/external/jfreereport/patches/libbase-1.1.3-remove-commons-logging.patch.1
@@ -0,0 +1,903 @@
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/AbstractBoot.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/AbstractBoot.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/AbstractBoot.java
      2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/AbstractBoot.java
   2021-02-23 12:11:46.680967049 +0000
+@@ -24,8 +24,7 @@
+ import java.util.ArrayList;
+ import java.util.Enumeration;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.config.Configuration;
+ import org.pentaho.reporting.libraries.base.config.ExtendedConfiguration;
+ import 
org.pentaho.reporting.libraries.base.config.ExtendedConfigurationWrapper;
+@@ -52,7 +51,7 @@
+   /**
+    * The logger for this class.
+    */
+-  private static final Log LOGGER = LogFactory.getLog(AbstractBoot.class);
++  private static final Logger LOGGER = 
Logger.getLogger(AbstractBoot.class.getName());
+ 
+   /**
+    * The configuration wrapper around the plain configuration.
+@@ -163,7 +162,7 @@
+       }
+       if (isBootFailed())
+       {
+-        LOGGER.error(getClass() + " failed to boot: " + 
bootFailed.getMessage());
++        LOGGER.severe(getClass() + " failed to boot: " + 
bootFailed.getMessage());
+       }
+       while (isBootInProgress())
+       {
+@@ -206,7 +205,7 @@
+     }
+     catch (Exception e)
+     {
+-      LOGGER.error(getClass() + " failed to boot: ", e);
++      LOGGER.severe(getClass() + " failed to boot: " + e);
+       this.bootFailed = e;
+     }
+     finally
+@@ -265,8 +264,8 @@
+           if (boot.isBootFailed())
+           {
+             this.bootFailed = boot.getBootFailureReason();
+-            LOGGER.error("Dependent project failed to boot up: " +
+-                projectInformation.getBootClass() + " failed to boot: ", 
this.bootFailed);
++            LOGGER.severe("Dependent project failed to boot up: " +
++                projectInformation.getBootClass() + " failed to boot: " + 
this.bootFailed);
+             return;
+           }
+         }
+@@ -419,7 +418,7 @@
+           }
+           catch (IOException ioe)
+           {
+-            LOGGER.warn("Failed to load the user configuration at " + url, 
ioe);
++            LOGGER.warning("Failed to load the user configuration at " + url 
+ " : " + ioe);
+           }
+         }
+ 
+@@ -431,7 +430,7 @@
+       }
+       catch (IOException e)
+       {
+-        LOGGER.warn("Failed to lookup the user configurations.", e);
++        LOGGER.warning("Failed to lookup the user configurations: " + e);
+       }
+     }
+     if (addSysProps)
+@@ -455,4 +454,4 @@
+     }
+     return extWrapper;
+   }
+-}
+\ No newline at end of file
++}
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/PackageManager.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/PackageManager.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/PackageManager.java
    2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/PackageManager.java
 2021-02-23 12:18:45.836952221 +0000
+@@ -23,8 +23,8 @@
+ import java.util.HashMap;
+ import java.util.Iterator;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.config.Configuration;
+ import org.pentaho.reporting.libraries.base.config.PropertyFileConfiguration;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+@@ -63,7 +63,7 @@
+     }
+   }
+ 
+-  private static final Log LOGGER = LogFactory.getLog(PackageManager.class);
++  private static final Logger LOGGER = 
Logger.getLogger(PackageManager.class.getName());
+ 
+   /**
+    * An internal constant declaring that the specified module was already 
loaded.
+@@ -201,7 +201,7 @@
+         }
+       }
+     }
+-    LOGGER.debug("Loaded a total of " + count + " modules under prefix: " + 
modulePrefix);
++    LOGGER.config("Loaded a total of " + count + " modules under prefix: " + 
modulePrefix);
+   }
+ 
+   /**
+@@ -224,9 +224,9 @@
+ 
+       if (mod.configure(this.booter))
+       {
+-        if (LOGGER.isDebugEnabled())
++        if (LOGGER.isLoggable(Level.CONFIG))
+         {
+-          LOGGER.debug("Conf: " +
++          LOGGER.config("Conf: " +
+               new PadMessage(mod.getModule().getModuleClass(), 70) +
+               " [" + mod.getModule().getSubSystem() + ']');
+         }
+@@ -244,9 +244,9 @@
+ 
+       if (mod.initialize(this.booter))
+       {
+-        if (LOGGER.isDebugEnabled())
++        if (LOGGER.isLoggable(Level.CONFIG))
+         {
+-          LOGGER.debug("Init: " +
++          LOGGER.config("Init: " +
+               new PadMessage(mod.getModule().getModuleClass(), 70) +
+               " [" + mod.getModule().getSubSystem() + ']');
+         }
+@@ -271,12 +271,12 @@
+       final PackageState dependentState = (PackageState) 
modulesByClass.get(key);
+       if (dependentState == null)
+       {
+-        LOGGER.warn("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not found.");
++        LOGGER.warning("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not found.");
+         return false;
+       }
+       if (dependentState.getState() != PackageState.STATE_CONFIGURED)
+       {
+-        LOGGER.warn("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not configured.");
++        LOGGER.warning("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not configured.");
+         return false;
+       }
+     }
+@@ -300,12 +300,12 @@
+       final PackageState dependentState = (PackageState) 
modulesByClass.get(key);
+       if (dependentState == null)
+       {
+-        LOGGER.warn("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not found.");
++        LOGGER.warning("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not found.");
+         return false;
+       }
+       if (dependentState.getState() != PackageState.STATE_INITIALIZED)
+       {
+-        LOGGER.warn("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not initializable.");
++        LOGGER.warning("Required dependency '" + key + "' for module '" + 
state.getModule().getModuleClass() + " not initializable.");
+         return false;
+       }
+     }
+@@ -418,15 +418,15 @@
+       {
+         if (fatal)
+         {
+-          LOGGER.warn("Unresolved dependency for package: " + 
moduleInfo.getModuleClass());
++          LOGGER.warning("Unresolved dependency for package: " + 
moduleInfo.getModuleClass());
+         }
+-        LOGGER.debug("Module class referenced, but not in classpath: " + 
moduleInfo.getModuleClass());
++        LOGGER.config("Module class referenced, but not in classpath: " + 
moduleInfo.getModuleClass());
+       }
+ 
+       if (acceptVersion(moduleInfo, module) == false)
+       {
+         // module conflict!
+-        LOGGER.warn("Module " + module.getName() + ": required version: "
++        LOGGER.warning("Module " + module.getName() + ": required version: "
+             + moduleInfo + ", but found Version: \n" + module);
+         final PackageState state = new PackageState(module, 
PackageState.STATE_ERROR);
+         dropFailedModule(state);
+@@ -437,7 +437,7 @@
+       if (moduleContained == RETURN_MODULE_ERROR)
+       {
+         // the module caused harm before ...
+-        LOGGER.debug("Indicated failure for module: " + 
module.getModuleClass());
++        LOGGER.config("Indicated failure for module: " + 
module.getModuleClass());
+         final PackageState state = new PackageState(module, 
PackageState.STATE_ERROR);
+         dropFailedModule(state);
+         return false;
+@@ -447,7 +447,7 @@
+         if (incompleteModules.contains(module))
+         {
+           // we assume that loading will continue ...
+-          LOGGER.error
++          LOGGER.severe
+               ("Circular module reference: This module definition is invalid: 
" +
+                   module.getClass());
+           final PackageState state = new PackageState(module, 
PackageState.STATE_ERROR);
+@@ -460,7 +460,7 @@
+         {
+           if (loadModule(required[i], incompleteModules, modules, true) == 
false)
+           {
+-            LOGGER.debug("Indicated failure for module: " + 
module.getModuleClass());
++            LOGGER.config("Indicated failure for module: " + 
module.getModuleClass());
+             final PackageState state = new PackageState(module, 
PackageState.STATE_ERROR);
+             dropFailedModule(state);
+             return false;
+@@ -472,7 +472,7 @@
+         {
+           if (loadModule(optional[i], incompleteModules, modules, true) == 
false)
+           {
+-            LOGGER.debug("Optional module: " + optional[i].getModuleClass() + 
" was not loaded.");
++            LOGGER.config("Optional module: " + optional[i].getModuleClass() 
+ " was not loaded.");
+           }
+         }
+         // maybe a dependent module defined the same base module ...
+@@ -486,7 +486,7 @@
+     }
+     catch (Exception e)
+     {
+-      LOGGER.warn("Exception while loading module: " + moduleInfo, e);
++      LOGGER.warning("Exception while loading module: " + moduleInfo + " : " 
+ e);
+       return false;
+     }
+   }
+@@ -506,7 +506,7 @@
+     }
+     if (module.getMajorVersion() == null)
+     {
+-      LOGGER.warn("Module " + module.getName() + " does not define a major 
version.");
++      LOGGER.warning("Module " + module.getName() + " does not define a major 
version.");
+     }
+     else
+     {
+@@ -528,7 +528,7 @@
+     }
+     if (module.getMinorVersion() == null)
+     {
+-      LOGGER.warn("Module " + module.getName() + " does not define a minor 
version.");
++      LOGGER.warning("Module " + module.getName() + " does not define a minor 
version.");
+     }
+     else
+     {
+@@ -550,14 +550,14 @@
+     }
+     if (module.getPatchLevel() == null)
+     {
+-      LOGGER.debug("Module " + module.getName() + " does not define a patch 
level.");
++      LOGGER.config("Module " + module.getName() + " does not define a patch 
level.");
+     }
+     else
+     {
+       if (acceptVersion(moduleRequirement.getPatchLevel(),
+           module.getPatchLevel()) > 0)
+       {
+-        LOGGER.debug("Did not accept patchlevel: "
++        LOGGER.config("Did not accept patchlevel: "
+             + moduleRequirement.getPatchLevel() + " - "
+             + module.getPatchLevel());
+         return false;
+@@ -699,4 +699,4 @@
+       p.println(mod.getDescription());
+     }
+   }
+-}
+\ No newline at end of file
++}
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/PackageSorter.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/PackageSorter.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/PackageSorter.java
     2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/PackageSorter.java
  2021-02-23 12:19:11.752198616 +0000
+@@ -23,8 +23,7 @@
+ import java.util.Iterator;
+ import java.util.List;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+ 
+ /**
+@@ -180,7 +179,7 @@
+   }
+ 
+   /** A logger for debug-messages. */
+-  private static final Log LOGGER = LogFactory.getLog(PackageSorter.class);
++  private static final Logger LOGGER = 
Logger.getLogger(PackageSorter.class.getName());
+ 
+   /**
+    * DefaultConstructor.
+@@ -313,7 +312,7 @@
+       final SortModule reqMod = (SortModule) moduleMap.get(moduleName);
+       if (reqMod == null)
+       {
+-        LOGGER.warn("Invalid state: Required dependency of '" + moduleName + 
"' had an error.");
++        LOGGER.warning("Invalid state: Required dependency of '" + moduleName 
+ "' had an error.");
+         continue;
+       }
+       if (reqMod.getPosition() >= position)
+@@ -415,7 +414,7 @@
+           moduleMap.get(requiredModules[i].getModuleClass());
+       if (dependentModule == null)
+       {
+-        LOGGER.warn
++        LOGGER.warning
+             ("A dependent module was not found in the list of known modules." 
+
+                 requiredModules[i].getModuleClass());
+         continue;
+@@ -431,11 +430,11 @@
+           moduleMap.get(optionalModules[i].getModuleClass());
+       if (dependentModule == null)
+       {
+-        LOGGER.warn("A dependent module was not found in the list of known 
modules.");
++        LOGGER.warning("A dependent module was not found in the list of known 
modules.");
+         continue;
+       }
+       collector.add(dependentModule.getSubSystem());
+     }
+     return collector;
+   }
+-}
+\ No newline at end of file
++}
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/PackageState.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/PackageState.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/boot/PackageState.java
      2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/boot/PackageState.java
   2021-02-23 12:22:15.204942814 +0000
+@@ -17,8 +17,8 @@
+ 
+ package org.pentaho.reporting.libraries.base.boot;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ 
+ /**
+  * The package state class is used by the package manager to keep track of
+@@ -31,7 +31,7 @@
+ public class PackageState
+ {
+   /** A logger. */
+-  private static final Log LOGGER = LogFactory.getLog(PackageState.class);
++  private static final Logger LOGGER = 
Logger.getLogger(PackageState.class.getName());
+ 
+   /**
+    * A constant defining that the package is new.
+@@ -119,20 +119,20 @@
+       }
+       catch (NoClassDefFoundError noClassDef)
+       {
+-        LOGGER.warn("Unable to load module classes for " +
++        LOGGER.warning("Unable to load module classes for " +
+             this.module.getName() + ':' + noClassDef.getMessage());
+         this.state = STATE_ERROR;
+       }
+       catch (Exception e)
+       {
+-        if (LOGGER.isDebugEnabled())
++        if (LOGGER.isLoggable(Level.CONFIG))
+         {
+           // its still worth a warning, but now we are more verbose ...
+-          LOGGER.warn("Unable to configure the module " + 
this.module.getName(), e);
++          LOGGER.warning("Unable to configure the module " + 
this.module.getName() + " : " + e);
+         }
+-        else if (LOGGER.isWarnEnabled())
++      else if (LOGGER.isLoggable(Level.WARNING))
+         {
+-          LOGGER.warn("Unable to configure the module " + 
this.module.getName());
++          LOGGER.warning("Unable to configure the module " + 
this.module.getName());
+         }
+         this.state = STATE_ERROR;
+       }
+@@ -187,32 +187,32 @@
+       }
+       catch (NoClassDefFoundError noClassDef)
+       {
+-        LOGGER.warn("Unable to load module classes for " + 
this.module.getName() + ':' + noClassDef.getMessage());
++        LOGGER.warning("Unable to load module classes for " + 
this.module.getName() + ':' + noClassDef.getMessage());
+         this.state = STATE_ERROR;
+       }
+       catch (ModuleInitializeException me)
+       {
+-        if (LOGGER.isDebugEnabled())
++        if (LOGGER.isLoggable(Level.CONFIG))
+         {
+           // its still worth a warning, but now we are more verbose ...
+-          LOGGER.warn("Unable to initialize the module " + 
this.module.getName(), me);
++          LOGGER.warning("Unable to initialize the module " + 
this.module.getName() + " : " + me);
+         }
+-        else if (LOGGER.isWarnEnabled())
++      else if (LOGGER.isLoggable(Level.WARNING))
+         {
+-          LOGGER.warn("Unable to initialize the module " + 
this.module.getName());
++          LOGGER.warning("Unable to initialize the module " + 
this.module.getName());
+         }
+         this.state = STATE_ERROR;
+       }
+       catch (Exception e)
+       {
+-        if (LOGGER.isDebugEnabled())
++        if (LOGGER.isLoggable(Level.CONFIG))
+         {
+           // its still worth a warning, but now we are more verbose ...
+-          LOGGER.warn("Unable to initialize the module " + 
this.module.getName(), e);
++          LOGGER.warning("Unable to initialize the module " + 
this.module.getName() + " : " + e);
+         }
+-        else if (LOGGER.isWarnEnabled())
++      else if (LOGGER.isLoggable(Level.WARNING))
+         {
+-          LOGGER.warn("Unable to initialize the module " + 
this.module.getName());
++          LOGGER.warning("Unable to initialize the module " + 
this.module.getName());
+         }
+         this.state = STATE_ERROR;
+       }
+@@ -267,4 +267,4 @@
+   {
+     this.state = STATE_ERROR;
+   }
+-}
+\ No newline at end of file
++}
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/config/PropertyFileConfiguration.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/config/PropertyFileConfiguration.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/config/PropertyFileConfiguration.java
       2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/config/PropertyFileConfiguration.java
    2021-02-23 12:13:55.788194558 +0000
+@@ -22,8 +22,7 @@
+ import java.io.InputStream;
+ import java.util.Properties;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+ 
+ /**
+@@ -34,7 +33,7 @@
+ public class PropertyFileConfiguration extends HierarchicalConfiguration
+ {
+   /** A logger for debug-messages. */
+-  private static final Log LOGGER = 
LogFactory.getLog(PropertyFileConfiguration.class);
++  private static final Logger LOGGER = 
Logger.getLogger(PropertyFileConfiguration.class.getName());
+   /** A serialization related constant. */
+   private static final long serialVersionUID = 2423181637547944866L;
+ 
+@@ -89,7 +88,7 @@
+     }
+     else
+     {
+-      LOGGER.debug("Configuration file not found in the classpath: " + 
resourceName);
++      LOGGER.config("Configuration file not found in the classpath: " + 
resourceName);
+     }
+ 
+   }
+@@ -118,9 +117,9 @@
+     }
+     catch (IOException ioe)
+     {
+-      LOGGER.warn("Unable to read configuration", ioe);
++      LOGGER.warning("Unable to read configuration:" + ioe);
+     }
+ 
+   }
+ 
+-}
+\ No newline at end of file
++}
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/ClassQueryTool.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/ClassQueryTool.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/ClassQueryTool.java
    2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/ClassQueryTool.java
 2021-02-23 12:24:05.460991092 +0000
+@@ -26,8 +26,7 @@
+ import java.util.zip.ZipEntry;
+ import java.util.zip.ZipInputStream;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * The class-query tool loads classes using a classloader and calls 
"processClass" for each class encountered. This is
+@@ -41,7 +40,7 @@
+ public abstract class ClassQueryTool
+ {
+   /** A logger. */
+-  private static final Log logger = LogFactory.getLog(ClassQueryTool.class);
++  private static final Logger logger = 
Logger.getLogger(ClassQueryTool.class.getName());
+ 
+   /**
+    * The default constructor.
+@@ -89,7 +88,7 @@
+     catch (Throwable e)
+     {
+       // ignore ..
+-      logger.debug("At class '" + className + "': " + e);
++      logger.config("At class '" + className + "': " + e);
+     }
+   }
+ 
+@@ -137,7 +136,7 @@
+     }
+     catch (final IOException e1)
+     {
+-      logger.debug("Caught IO-Exception while processing file " + jarFile, 
e1);
++      logger.config("Caught IO-Exception while processing file " + jarFile + 
" : " + e1);
+     }
+   }
+ 
+@@ -225,7 +224,7 @@
+     for (int i = 0; i < allArray.length; i++)
+     {
+       final URL url = allArray[i];
+-      logger.debug(url);
++      logger.config(url.toString());
+     }
+     for (int i = 0; i < urlsArray.length; i++)
+     {
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/DebugLog.java
 libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/DebugLog.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/DebugLog.java
  2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/DebugLog.java    
   2021-02-23 12:26:00.488084723 +0000
+@@ -17,8 +17,7 @@
+ 
+ package org.pentaho.reporting.libraries.base.util;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * This class provides static log messages for on-going bug-hunting efforts. 
This removes the need to create
+@@ -29,7 +28,7 @@
+ public final class DebugLog
+ {
+   /** A logger. */
+-  private static final Log logger = LogFactory.getLog(DebugLog.class);
++  private static final Logger logger = 
Logger.getLogger(DebugLog.class.getName());
+ 
+   /**
+    * Logs a message using the debug-logger. By channeling all temporary log 
messages through this method,
+@@ -39,7 +38,7 @@
+    */
+   public static void log(final Object message)
+   {
+-    logger.info(message);
++    logger.info(message.toString());
+   }
+ 
+   /**
+@@ -51,7 +50,7 @@
+    */
+   public static void log(final Object message, final Throwable t)
+   {
+-    logger.info(message, t);
++    logger.info(message + " : " + t);
+   }
+ 
+   /**
+@@ -68,7 +67,7 @@
+   public static void logHereWE()
+   {
+     //noinspection ThrowableInstanceNeverThrown
+-    logger.info("HERE: Debug point reached", new Exception("Debug-Point 
reached"));
++    logger.info("HERE: Debug point reached");
+   }
+ 
+   /**
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/ObjectUtilities.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/ObjectUtilities.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/ObjectUtilities.java
   2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/ObjectUtilities.java
        2021-02-23 12:30:11.253468898 +0000
+@@ -29,8 +29,8 @@
+ import java.util.Arrays;
+ import java.util.StringTokenizer;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ 
+ /**
+  * A collection of useful static utility methods for handling classes and 
object instantiation.
+@@ -39,7 +39,7 @@
+  */
+ public final class ObjectUtilities
+ {
+-  private static final Log LOGGER = LogFactory.getLog(ObjectUtilities.class);
++  private static final Logger LOGGER = 
Logger.getLogger(ObjectUtilities.class.getName());
+ 
+   /**
+    * A constant for using the TheadContext as source for the classloader.
+@@ -180,15 +180,15 @@
+     }
+     catch (NoSuchMethodException e)
+     {
+-      LOGGER.warn("Object without clone() method is impossible on class " + 
aClass, e);
++      LOGGER.warning("Object without clone() method is impossible on class " 
+ aClass + " : " + e);
+     }
+     catch (IllegalAccessException e)
+     {
+-      LOGGER.warn("Object.clone(): unable to call method 'clone()'  on class 
" + aClass, e);
++      LOGGER.warning("Object.clone(): unable to call method 'clone()'  on 
class " + aClass + " : " + e);
+     }
+     catch (InvocationTargetException e)
+     {
+-      LOGGER.warn("Object without clone() method is impossible on class " + 
aClass, e);
++      LOGGER.warning("Object without clone() method is impossible on class " 
+ aClass + " : " + e);
+     }
+     throw new CloneNotSupportedException
+         ("Failed to clone: Clone caused an Exception while cloning type " + 
aClass);
+@@ -424,32 +424,32 @@
+       if (type != null && type.isAssignableFrom(c) == false)
+       {
+         // this is unacceptable and means someone messed up the configuration
+-        LOGGER.warn("Specified class " + className + " is not of expected 
type " + type);
++        LOGGER.warning("Specified class " + className + " is not of expected 
type " + type);
+         return null;
+       }
+       return c.newInstance();
+     }
+     catch (ClassNotFoundException e)
+     {
+-      if (LOGGER.isDebugEnabled())
++      if (LOGGER.isLoggable(Level.CONFIG))
+       {
+-        LOGGER.debug("Specified class " + className + " does not exist.");
++        LOGGER.config("Specified class " + className + " does not exist.");
+       }
+       // sometimes, this one is expected.
+     }
+     catch (NoClassDefFoundError e)
+     {
+-      if (LOGGER.isDebugEnabled())
++      if (LOGGER.isLoggable(Level.CONFIG))
+       {
+-        LOGGER.debug("Specified class " + className + " cannot be loaded 
[NOCLASSDEFERROR].");
++        LOGGER.config("Specified class " + className + " cannot be loaded 
[NOCLASSDEFERROR].");
+       }
+     }
+     catch (Throwable e)
+     {
+       // this is more severe than a class not being found at all
+-      if (LOGGER.isDebugEnabled())
++      if (LOGGER.isLoggable(Level.CONFIG))
+       {
+-        LOGGER.info("Specified class " + className + " failed to instantiate 
correctly.", e);
++        LOGGER.info("Specified class " + className + " failed to instantiate 
correctly." + " : " + e);
+       }
+       else
+       {
+@@ -615,4 +615,4 @@
+     }
+     return hashCode;
+   }
+-}
+\ No newline at end of file
++}
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/PngEncoder.java
 libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/PngEncoder.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/PngEncoder.java
        2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/PngEncoder.java  
   2021-02-23 12:27:15.484797751 +0000
+@@ -27,8 +27,7 @@
+ import java.util.zip.Deflater;
+ import java.util.zip.DeflaterOutputStream;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.encoder.ImageEncoder;
+ import 
org.pentaho.reporting.libraries.base.encoder.UnsupportedEncoderException;
+ 
+@@ -66,7 +65,7 @@
+ public class PngEncoder implements ImageEncoder
+ {
+   /** A logger for debug-messages. */
+-  private static final Log logger = LogFactory.getLog(PngEncoder.class);
++  private static final Logger logger = 
Logger.getLogger(PngEncoder.class.getName());
+ 
+   /**
+    * Constant specifying that alpha channel should be encoded.
+@@ -622,12 +621,12 @@
+         }
+         catch (Exception e)
+         {
+-          logger.error("interrupted waiting for pixels!", e);
++          logger.severe("interrupted waiting for pixels: " + e);
+           return false;
+         }
+         if ((pg.getStatus() & ImageObserver.ABORT) != 0)
+         {
+-          logger.error("image fetch aborted or errored");
++          logger.severe("image fetch aborted or errored");
+           return false;
+         }
+ 
+@@ -709,7 +708,7 @@
+     }
+     catch (IOException e)
+     {
+-      logger.error("Failed to write PNG Data", e);
++      logger.severe("Failed to write PNG Data:" + e);
+       return false;
+     }
+   }
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/ResourceBundleSupport.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/ResourceBundleSupport.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/ResourceBundleSupport.java
     2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/ResourceBundleSupport.java
  2021-02-23 12:27:45.015078518 +0000
+@@ -36,8 +36,7 @@
+ import javax.swing.JMenu;
+ import javax.swing.KeyStroke;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * An utility class to ease up using property-file resource bundles.
+@@ -60,7 +59,7 @@
+   /**
+    * A logger for debug-messages.
+    */
+-  private static final Log logger = 
LogFactory.getLog(ResourceBundleSupport.class);
++  private static final Logger logger = 
Logger.getLogger(ResourceBundleSupport.class.getName());
+ 
+   /**
+    * The resource bundle that will be used for local lookups.
+@@ -259,7 +258,7 @@
+         }
+         catch (Exception e)
+         {
+-          logger.error("Error during global lookup", e);
++          logger.severe("Error during global lookup: " + e);
+           throw new MissingResourceException("Error during global lookup", 
getResourceBase(), key);
+         }
+       }
+@@ -643,7 +642,7 @@
+     final URL in = ObjectUtilities.getResource(name, 
ResourceBundleSupport.class);
+     if (in == null)
+     {
+-      logger.warn("Unable to find file in the class path: " + name + "; key=" 
+ key);
++      logger.warning("Unable to find file in the class path: " + name + "; 
key=" + key);
+     }
+     return in;
+   }
+@@ -668,13 +667,13 @@
+ 
+     if (in == null)
+     {
+-      logger.warn("Unable to find file in the class path: " + resourceName);
++      logger.warning("Unable to find file in the class path: " + 
resourceName);
+       return new ImageIcon(createTransparentImage(1, 1));
+     }
+     final Image img = Toolkit.getDefaultToolkit().createImage(in);
+     if (img == null)
+     {
+-      logger.warn("Unable to instantiate the image: " + resourceName);
++      logger.warning("Unable to instantiate the image: " + resourceName);
+       return new ImageIcon(createTransparentImage(1, 1));
+     }
+     if (scale)
+@@ -808,7 +808,7 @@
+     }
+     catch (MissingResourceException mre)
+     {
+-      logger.warn ("ResourceBundleSupport#getString(,,)", mre);
++      logger.warning ("ResourceBundleSupport#getString(,,): " + mre);
+       return '!' + key + '!';
+     }
+   }
+@@ -821,7 +821,7 @@
+     }
+     catch (MissingResourceException mre)
+     {
+-      logger.warn ("ResourceBundleSupport#getString(,,)", mre);
++      logger.warning ("ResourceBundleSupport#getString(,,): " + mre);
+       return '!' + key + '!';
+     }
+   }
+@@ -836,7 +836,7 @@
+     }
+     catch (MissingResourceException mre)
+     {
+-      logger.warn ("ResourceBundleSupport#getString(,,)", mre);
++      logger.warning ("ResourceBundleSupport#getString(,,): " + mre);
+       return '!' + key + '!';
+     }
+   }
+@@ -852,7 +852,7 @@
+     }
+     catch (MissingResourceException mre)
+     {
+-      logger.warn ("ResourceBundleSupport#getString(,,)", mre);
++      logger.warning ("ResourceBundleSupport#getString(,,): " + mre);
+       return '!' + key + '!';
+     }
+   }
+diff -ru 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/WaitingImageObserver.java
 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/WaitingImageObserver.java
+--- 
libbase-1.1.3.orig/source/org/pentaho/reporting/libraries/base/util/WaitingImageObserver.java
      2009-11-16 10:14:12.000000000 +0000
++++ 
libbase-1.1.3/source/org/pentaho/reporting/libraries/base/util/WaitingImageObserver.java
   2021-02-23 12:30:28.223630238 +0000
+@@ -22,8 +22,7 @@
+ import java.awt.image.BufferedImage;
+ import java.awt.image.ImageObserver;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * This image observer blocks until the image is completely loaded. AWT 
defers the loading of images until they are
+@@ -37,7 +36,7 @@
+ public class WaitingImageObserver implements ImageObserver
+ {
+   /** A logger. */
+-  private static final Log LOGGER = 
LogFactory.getLog(WaitingImageObserver.class);
++  private static final Logger LOGGER = 
Logger.getLogger(WaitingImageObserver.class.getName());
+ 
+   /**
+    * For serialization.
+@@ -149,7 +148,7 @@
+       }
+       catch (InterruptedException e)
+       {
+-        LOGGER.info("WaitingImageObserver.waitImageLoaded(): 
InterruptedException thrown", e);
++        LOGGER.info("WaitingImageObserver.waitImageLoaded(): 
InterruptedException thrown: " + e);
+       }
+ 
+       if (maxLoadTime > 0 && lastUpdate < (System.currentTimeMillis() - 
maxLoadTime))
+@@ -172,4 +171,4 @@
+   {
+     return this.error;
+   }
+-}
+\ No newline at end of file
++}
+--- a/source/org/pentaho/reporting/libraries/base/util/IOUtils.java
++++ b/source/org/pentaho/reporting/libraries/base/util/IOUtils.java
+@@ -34,8 +34,7 @@
+ import java.sql.Clob;
+ import java.sql.SQLException;
+ 
+-import org.apache.commons.logging.LogFactory;
+-import org.apache.commons.logging.Log;
++import java.util.logging.Logger;
+ 
+ /**
+  * The IOUtils provide some IO related helper methods.
+@@ -48,7 +47,7 @@
+    * the singleton instance of the utility package.
+    */
+   private static IOUtils instance;
+-  private static final Log logger = LogFactory.getLog(IOUtils.class);
++  private static final Logger logger = 
Logger.getLogger(IOUtils.class.getName());
+   /**
+    * DefaultConstructor.
+    */
+@@ -855,7 +854,7 @@
+       final long length = clob.length();
+       if (length > Integer.MAX_VALUE)
+       {
+-        logger.warn ("This CLOB contains more than 2^31 characters. We cannot 
handle that.");
++        logger.warning ("This CLOB contains more than 2^31 characters. We 
cannot handle that.");
+         return null;
+       }
+ 
+@@ -867,7 +866,7 @@
+       }
+       catch (IOException e)
+       {
+-        logger.warn ("Copying the stream failed.", e);
++        logger.warning ("Copying the stream failed: " + e);
+       }
+       try
+       {
+@@ -875,7 +874,7 @@
+       }
+       catch (IOException e)
+       {
+-        logger.warn ("Failed to close input stream. No worries, we will be 
alright anyway.", e);
++        logger.warning ("Failed to close input stream. No worries, we will be 
alright anyway: " + e);
+       }
+       return outStream.toString();
+     }
+@@ -898,7 +897,7 @@
+     final long length = clob.length();
+     if (length > Integer.MAX_VALUE)
+     {
+-      logger.warn ("This CLOB contains more than 2^31 characters. We cannot 
handle that.");
++      logger.warning ("This CLOB contains more than 2^31 characters. We 
cannot handle that.");
+       return null;
+     }
+ 
+@@ -910,7 +909,7 @@
+     }
+     catch (IOException e)
+     {
+-      logger.warn ("Copying the stream failed.", e);
++      logger.warning ("Copying the stream failed: " + e);
+     }
+     try
+     {
+@@ -918,7 +917,7 @@
+     }
+     catch (IOException e)
+     {
+-      logger.warn ("Failed to close input stream. No worries, we will be 
alright anyway.", e);
++      logger.warning ("Failed to close input stream. No worries, we will be 
alright anyway: " + e);
+     }
+     return outStream.toByteArray();
+   }
diff --git 
a/external/jfreereport/patches/libfonts-1.1.3-remove-commons-logging.patch.1 
b/external/jfreereport/patches/libfonts-1.1.3-remove-commons-logging.patch.1
new file mode 100644
index 000000000000..723a732a593a
--- /dev/null
+++ b/external/jfreereport/patches/libfonts-1.1.3-remove-commons-logging.patch.1
@@ -0,0 +1,506 @@
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/afm/AfmFontRegistry.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/afm/AfmFontRegistry.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/afm/AfmFontRegistry.java
  2021-03-12 10:15:06.215353433 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/afm/AfmFontRegistry.java
       2021-03-12 10:26:44.036236575 +0000
+@@ -37,8 +37,7 @@
+ import org.pentaho.reporting.libraries.resourceloader.ResourceData;
+ import org.pentaho.reporting.libraries.base.util.StringUtils;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * Creation-Date: 21.07.2007, 20:14:05
+@@ -47,7 +46,8 @@
+  */
+ public class AfmFontRegistry extends AbstractFontFileRegistry
+ {
+-  private static final Log logger = LogFactory.getLog(AfmFontRegistry.class);
++  private static final Logger logger = 
Logger.getLogger(AfmFontRegistry.class.getName());
++
+   /**
+    * The font path filter is used to collect font files and directories during
+    * the font path registration.
+@@ -133,7 +133,7 @@
+         filePfb.isFile() == false ||
+         filePfb.canRead() == false)
+     {
+-      logger.warn("Cannot embedd font: " + filePfb + " is missing for " + 
font);
++      logger.warning("Cannot embedd font: " + filePfb + " is missing for " + 
font);
+       embedded = false;
+     }
+ 
+@@ -264,11 +264,11 @@
+     catch (final ClassNotFoundException cnfe)
+     {
+       // ignore the exception.
+-      logger.debug("Failed to restore the cache: Cache was created by a 
different version of LibFonts");
++      logger.config("Failed to restore the cache: Cache was created by a 
different version of LibFonts");
+     }
+     catch (Exception e)
+     {
+-      logger.debug("Failed to restore the cache:", e);
++      logger.config("Failed to restore the cache: " + e);
+     }
+   }
+ 
+@@ -311,14 +311,14 @@
+         catch (IOException e)
+         {
+           // ignore ..
+-          logger.debug("Failed to store cached font data", e);
++          logger.config("Failed to store cached font data: " + e);
+         }
+       }
+     }
+     catch (IOException e)
+     {
+       // should not happen
+-      logger.debug("Failed to store cached font data", e);
++      logger.config("Failed to store cached font data: " + e);
+     }
+   }
+ }
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/encoding/EncodingRegistry.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/encoding/EncodingRegistry.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/encoding/EncodingRegistry.java
    2021-03-12 10:15:06.228353587 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/encoding/EncodingRegistry.java
 2021-03-12 10:27:11.614524616 +0000
+@@ -31,8 +31,7 @@
+ import 
org.pentaho.reporting.libraries.resourceloader.factory.property.PropertiesResourceFactory;
+ import org.pentaho.reporting.libraries.base.config.Configuration;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * A global registry for all supported encodings. This offers the option to 
fall
+@@ -42,7 +41,7 @@
+  */
+ public final class EncodingRegistry
+ {
+-  private static final Log logger = LogFactory.getLog(EncodingRegistry.class);
++  private static final Logger logger = 
Logger.getLogger(EncodingRegistry.class.getName());
+ 
+   /**
+    * Implementation doc: This class uses several sources to load the 
encodings.
+@@ -266,7 +265,7 @@
+       catch (Exception e)
+       {
+         // fall back ...
+-        logger.warn("Failed to create external-encoding instance for key " + 
key, e);
++        logger.warning("Failed to create external-encoding instance for key " 
+ key + " : " + e);
+       }
+     }
+     if (isEncodingSupportedJVM(name))
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/encoding/generator/EncodingGenerator.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/encoding/generator/EncodingGenerator.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/encoding/generator/EncodingGenerator.java
 2021-03-12 10:15:06.218353469 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/encoding/generator/EncodingGenerator.java
      2021-03-12 10:27:47.015894357 +0000
+@@ -35,8 +35,7 @@
+ import 
org.pentaho.reporting.libraries.fonts.encoding.External8BitEncodingData;
+ import org.pentaho.reporting.libraries.base.config.DefaultConfiguration;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * A simple sourcecode generator.
+@@ -45,7 +44,7 @@
+  */
+ public class EncodingGenerator
+ {
+-  private static final Log logger = 
LogFactory.getLog(EncodingGenerator.class);
++  private static final Logger logger = 
Logger.getLogger(EncodingGenerator.class.getName());
+ 
+   private File targetDirectory;
+   private DefaultConfiguration propertySet;
+@@ -200,7 +199,7 @@
+       }
+       catch(Exception e)
+       {
+-        logger.warn ("Failed to generate Encoding " + key, e);
++        logger.warning("Failed to generate Encoding " + key + " : " + e);
+       }
+     }
+   }
+@@ -269,7 +268,7 @@
+       }
+       catch(Exception e)
+       {
+-        logger.warn ("Failed to generate Encoding " + key, e);
++        logger.warning("Failed to generate Encoding " + key + " : " + e);
+       }
+     }
+ 
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/pfm/PfmFontRegistry.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/pfm/PfmFontRegistry.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/pfm/PfmFontRegistry.java
  2021-03-12 10:15:06.217353457 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/pfm/PfmFontRegistry.java
       2021-03-12 10:28:33.904384084 +0000
+@@ -37,8 +37,7 @@
+ import org.pentaho.reporting.libraries.resourceloader.ResourceData;
+ import org.pentaho.reporting.libraries.base.util.StringUtils;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * Creation-Date: 21.07.2007, 16:58:06
+@@ -47,7 +46,7 @@
+  */
+ public class PfmFontRegistry extends AbstractFontFileRegistry
+ {
+-  private static final Log logger = LogFactory.getLog(PfmFontRegistry.class);
++  private static final Logger logger = 
Logger.getLogger(PfmFontRegistry.class.getName());
+ 
+   /**
+    * The font path filter is used to collect font files and directories during
+@@ -146,7 +145,7 @@
+         filePfb.isFile() == false ||
+         filePfb.canRead() == false)
+     {
+-      logger.warn("Cannot embedd font: " + filePfb + " is missing for " + 
font);
++      logger.warning("Cannot embedd font: " + filePfb + " is missing for " + 
font);
+       embedded = false;
+     }
+ 
+@@ -155,7 +154,7 @@
+     {
+       if (pfmFont.isItextCompatible() == false)
+       {
+-        logger.warn("Cannot embedd font: pfb-file for " + font + " is not 
valid (according to iText).");
++        logger.warning("Cannot embedd font: pfb-file for " + font + " is not 
valid (according to iText).");
+       }
+     }
+     registerFont (pfmFont);
+@@ -283,7 +282,7 @@
+     }
+     catch (Exception e)
+     {
+-      logger.debug("Failed to restore the cache:", e);
++      logger.config("Failed to restore the cache: " + e);
+     }
+   }
+ 
+@@ -326,14 +325,14 @@
+         catch (IOException e)
+         {
+           // ignore ..
+-          logger.debug("Failed to store cached font data", e);
++          logger.config("Failed to store cached font data: " + e);
+         }
+       }
+     }
+     catch (IOException e)
+     {
+       // should not happen
+-      logger.debug("Failed to store cached font data", e);
++      logger.config("Failed to store cached font data: " + e);
+     }
+   }
+ }
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/registry/AbstractFontFileRegistry.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/registry/AbstractFontFileRegistry.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/registry/AbstractFontFileRegistry.java
    2021-03-12 10:15:06.229353599 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/registry/AbstractFontFileRegistry.java
 2021-03-12 10:25:43.831607771 +0000
+@@ -25,8 +25,7 @@
+ import java.util.Iterator;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.fonts.LibFontBoot;
+ import org.pentaho.reporting.libraries.fonts.encoding.EncodingRegistry;
+ import org.pentaho.reporting.libraries.base.util.StringUtils;
+@@ -39,7 +38,7 @@
+  */
+ public abstract class AbstractFontFileRegistry implements FontRegistry
+ {
+-  private static final Log logger = 
LogFactory.getLog(AbstractFontFileRegistry.class);
++  private static final Logger logger = 
Logger.getLogger(AbstractFontFileRegistry.class.getName());
+ 
+   private HashMap seenFiles;
+ 
+@@ -74,7 +73,7 @@
+       }
+       catch (Exception e)
+       {
+-        logger.warn("Extra font path " + extraDir + " could not be fully 
registered.", e);
++        logger.warning("Extra font path " + extraDir + " could not be fully 
registered: " + e);
+       }
+     }
+   }
+@@ -98,13 +97,13 @@
+     final String jrepath = safeSystemGetProperty("java.home", ".");
+     final String fs = safeSystemGetProperty("file.separator", File.separator);
+ 
+-    logger.debug("Running on operating system: " + osname);
+-    logger.debug("Character encoding used as default: " + encoding);
++    logger.config("Running on operating system: " + osname);
++    logger.config("Character encoding used as default: " + encoding);
+ 
+     if (safeSystemGetProperty("mrj.version", null) != null)
+     {
+       final String userhome = safeSystemGetProperty("user.home", ".");
+-      logger.debug("Detected MacOS (Property 'mrj.version' is present.");
++      logger.config("Detected MacOS (Property 'mrj.version' is present.");
+       registerFontPath(new File(userhome + "/Library/Fonts"), encoding);
+       registerFontPath(new File("/Library/Fonts"), encoding);
+       registerFontPath(new File("/Network/Library/Fonts"), encoding);
+@@ -116,7 +115,7 @@
+     }
+     else
+     {
+-      logger.debug("Assuming unix like file structures");
++      logger.config("Assuming unix like file structures");
+       // Assume X11 is installed in the default location.
+       registerFontPath(new File("/usr/X11R6/lib/X11/fonts"), encoding);
+       registerFontPath(new File("/usr/share/fonts"), encoding);
+@@ -145,7 +144,7 @@
+    */
+   private void registerWindowsFontPath(final String encoding)
+   {
+-    logger.debug("Found 'Windows' in the OS name, assuming DOS/Win32 
structures");
++    logger.config("Found 'Windows' in the OS name, assuming DOS/Win32 
structures");
+     // Assume windows
+     // If you are not using windows, ignore this. This just checks if a 
windows system
+     // directory exist and includes a font dir.
+@@ -182,7 +181,7 @@
+         }
+       }
+     }
+-    logger.debug("Fonts located in \"" + fontPath + '\"');
++    logger.config("Fonts located in \"" + fontPath + '\"');
+     if (fontPath != null)
+     {
+       final File file = new File(fontPath);
+@@ -272,7 +271,7 @@
+       }
+       catch (Exception e)
+       {
+-        logger.warn("Font " + file + " is invalid. Message:" + 
e.getMessage(), e);
++        logger.warning("Font " + file + " is invalid. Message: " + e);
+       }
+     }
+   }
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/text/GraphemeClassifier.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/text/GraphemeClassifier.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/text/GraphemeClassifier.java
      2021-03-12 10:15:06.205353315 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/text/GraphemeClassifier.java
   2021-03-12 10:29:03.600694237 +0000
+@@ -22,8 +22,7 @@
+ import java.io.IOException;
+ 
+ import org.pentaho.reporting.libraries.fonts.tools.ByteTable;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * Creation-Date: 11.06.2006, 17:11:16
+@@ -32,7 +31,7 @@
+  */
+ public final class GraphemeClassifier
+ {
+-  private static final Log logger = 
LogFactory.getLog(GraphemeClassifier.class);
++  private static final Logger logger = 
Logger.getLogger(GraphemeClassifier.class.getName());
+ 
+   public static final int OTHER = 0;
+ 
+@@ -70,7 +69,7 @@
+       }
+       catch(Exception e)
+       {
+-        logger.warn ("Unable to load the pre-generated classification data.", 
e);
++        logger.warning("Unable to load the pre-generated classification data: 
" + e);
+       }
+       finally
+       {
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFont.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFont.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFont.java
        2021-03-12 10:15:06.214353421 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFont.java
     2021-03-12 10:29:19.746862875 +0000
+@@ -24,8 +24,7 @@
+ import org.pentaho.reporting.libraries.fonts.ByteAccessUtilities;
+ import org.pentaho.reporting.libraries.fonts.io.FileFontDataInputSource;
+ import org.pentaho.reporting.libraries.fonts.io.FontDataInputSource;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * Creation-Date: 06.11.2005, 18:27:21
+@@ -34,7 +33,7 @@
+  */
+ public class TrueTypeFont
+ {
+-  private static final Log logger = LogFactory.getLog(TrueTypeFont.class);
++  private static final Logger logger = 
Logger.getLogger(TrueTypeFont.class.getName());
+ 
+   private static class TrueTypeFontHeader
+   {
+@@ -327,7 +326,7 @@
+               (FontHeaderTable) getTable(FontHeaderTable.TABLE_ID);
+       if (header == null)
+       {
+-        logger.warn("The font '" + filename + "' does not have a 'head' 
table. The font file is not valid.");
++        logger.warning("The font '" + filename + "' does not have a 'head' 
table. The font file is not valid.");
+         return null;
+       }
+       final byte[] buffer =
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontMetricsFactory.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontMetricsFactory.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontMetricsFactory.java
  2021-03-12 10:15:06.213353409 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontMetricsFactory.java
       2021-03-12 10:29:38.442058137 +0000
+@@ -21,8 +21,7 @@
+ import java.io.IOException;
+ import java.util.HashMap;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.fonts.io.FileFontDataInputSource;
+ import org.pentaho.reporting.libraries.fonts.io.FontDataInputSource;
+ import org.pentaho.reporting.libraries.fonts.registry.FontContext;
+@@ -38,7 +37,7 @@
+  */
+ public class TrueTypeFontMetricsFactory implements FontMetricsFactory
+ {
+-  private static final Log logger = 
LogFactory.getLog(TrueTypeFontMetricsFactory.class);
++  private static final Logger logger = 
Logger.getLogger(TrueTypeFontMetricsFactory.class.getName());
+   private HashMap fontRecords;
+ 
+   public TrueTypeFontMetricsFactory()
+@@ -77,7 +76,7 @@
+     }
+     catch (IOException e)
+     {
+-      logger.warn("Unable to read the font.", e);
++      logger.warning("Unable to read the font: " + e);
+       // todo: We should throw a better exception instead, shouldnt we?
+       throw new IllegalStateException();
+     }
+diff -ru 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontRegistry.java
 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontRegistry.java
+--- 
libfonts-1.1.3.orig/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontRegistry.java
        2021-03-12 10:15:06.214353421 +0000
++++ 
libfonts-1.1.3/source/org/pentaho/reporting/libraries/fonts/truetype/TrueTypeFontRegistry.java
     2021-03-12 10:31:15.504071887 +0000
+@@ -28,8 +28,7 @@
+ import java.io.Serializable;
+ import java.util.HashMap;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.fonts.FontException;
+ import org.pentaho.reporting.libraries.fonts.LibFontBoot;
+ import org.pentaho.reporting.libraries.fonts.cache.FontCache;
+@@ -61,7 +60,7 @@
+     return secondLevelCache;
+   }
+ 
+-  private static final Log logger = 
LogFactory.getLog(TrueTypeFontRegistry.class);
++  private static final Logger logger = 
Logger.getLogger(TrueTypeFontRegistry.class.getName());
+ 
+   /**
+    * The font path filter is used to collect font files and directories 
during the font path registration.
+@@ -180,7 +179,7 @@
+     }
+     catch (Exception e)
+     {
+-      logger.info("Unable to register font file " + file, e);
++      logger.info("Unable to register font file " + file + " : " + e);
+       // An error must not stop us on our holy mission to find and register
+       // all fonts :)
+       return false;
+@@ -206,7 +205,7 @@
+     }
+     catch (FontException e)
+     {
+-      logger.info("The font '" + font.getFilename() + "' is invalid.", e);
++      logger.info("The font '" + font.getFilename() + "' is invalid: " + e);
+       return;
+     }
+ 
+@@ -347,11 +346,11 @@
+     catch (final ClassNotFoundException cnfe)
+     {
+       // ignore the exception.
+-      logger.debug("Failed to restore the cache: Cache was created by a 
different version of LibFonts");
++      logger.config("Failed to restore the cache: Cache was created by a 
different version of LibFonts");
+     }
+     catch (Exception e)
+     {
+-      logger.debug("Non-Fatal: Failed to restore the cache. The cache will be 
rebuilt.", e);
++      logger.config("Non-Fatal: Failed to restore the cache. The cache will 
be rebuilt: " + e);
+     }
+   }
+ 
+@@ -394,14 +393,14 @@
+         catch (IOException e)
+         {
+           // ignore ..
+-          logger.debug("Failed to store cached font data", e);
++          logger.config("Failed to store cached font data: " + e);
+         }
+       }
+     }
+     catch (IOException e)
+     {
+       // should not happen
+-      logger.debug("Failed to store cached font data", e);
++      logger.config("Failed to store cached font data: " + e);
+     }
+   }
+ }
+--- a/source/org/pentaho/reporting/libraries/fonts/itext/BaseFontSupport.java
++++ b/source/org/pentaho/reporting/libraries/fonts/itext/BaseFontSupport.java
+@@ -34,8 +34,8 @@
+ import org.pentaho.reporting.libraries.fonts.merge.CompoundFontRecord;
+ import org.pentaho.reporting.libraries.base.config.ExtendedConfiguration;
+ import org.pentaho.reporting.libraries.base.util.StringUtils;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ 
+ /**
+  * iText font support.
+@@ -44,7 +44,7 @@
+  */
+ public class BaseFontSupport implements FontMapper
+ {
+-  private static final Log logger = LogFactory.getLog(BaseFontSupport.class);
++  private static final Logger logger = 
Logger.getLogger(BaseFontSupport.class.getName());
+   /**
+    * Storage for BaseFont objects created.
+    */
+@@ -235,7 +235,7 @@
+             final FontSource source = (FontSource) registryFontRecord;
+             if (source.isEmbeddable() == false)
+             {
+-              logger.warn("License of font forbids embedded usage for font: " 
+ fontKey);
++              logger.warning("License of font forbids embedded usage for 
font: " + fontKey);
+               // strict mode here?
+               embeddedOverride = false;
+             }
+@@ -286,13 +286,13 @@
+     }
+     catch (Exception e)
+     {
+-      if (logger.isDebugEnabled())
++      if (logger.isLoggable(Level.CONFIG))
+       {
+-        logger.debug("BaseFont.createFont failed. Key = " + fontKey + ": " + 
e.getMessage(), e);
++        logger.config("BaseFont.createFont failed. Key = " + fontKey + ": " + 
e);
+       }
+-      else if (logger.isWarnEnabled())
++      else if (logger.isLoggable(Level.WARNING))
+       {
+-        logger.warn("BaseFont.createFont failed. Key = " + fontKey + ": " + 
e.getMessage());
++        logger.warning("BaseFont.createFont failed. Key = " + fontKey + ": " 
+ e.getMessage());
+       }
+     }
+     // fallback .. use BaseFont.HELVETICA as default
+@@ -322,7 +322,7 @@
+     }
+     catch (Exception e)
+     {
+-      logger.warn("BaseFont.createFont for FALLBACK failed.", e);
++      logger.warning("BaseFont.createFont for FALLBACK failed: " + e);
+       throw new BaseFontCreateException("Null font = " + fontKey);
+     }
+     throw new BaseFontCreateException("BaseFont creation failed, null font: " 
+ fontKey);
diff --git 
a/external/jfreereport/patches/libformula-1.1.3-remove-commons-logging.patch.1 
b/external/jfreereport/patches/libformula-1.1.3-remove-commons-logging.patch.1
new file mode 100644
index 000000000000..5a578cf56d08
--- /dev/null
+++ 
b/external/jfreereport/patches/libformula-1.1.3-remove-commons-logging.patch.1
@@ -0,0 +1,266 @@
+diff -ru 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/Formula.java
 libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/Formula.java
+--- 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/Formula.java
  2021-02-23 14:41:06.962127389 +0000
++++ 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/Formula.java    
   2021-02-23 14:48:18.016328356 +0000
+@@ -19,8 +19,7 @@
+ 
+ import java.io.Serializable;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.formula.lvalues.LValue;
+ import org.pentaho.reporting.libraries.formula.lvalues.TypeValuePair;
+ import org.pentaho.reporting.libraries.formula.parser.FormulaParseException;
+@@ -40,7 +39,7 @@
+  */
+ public class Formula implements Serializable, Cloneable
+ {
+-  private static final Log logger = LogFactory.getLog(Formula.class);
++  private static final Logger logger = 
Logger.getLogger(Formula.class.getName());
+   private LValue rootReference;
+   private static final long serialVersionUID = -1176925812499923546L;
+ 
+@@ -105,7 +104,7 @@
+       final Type type = typeValuePair.getType();
+       if (type.isFlagSet(Type.ERROR_TYPE))
+       {
+-        logger.debug("Error: " + typeValuePair.getValue());
++        logger.config("Error: " + typeValuePair.getValue());
+       }
+       else if (type.isFlagSet(Type.ARRAY_TYPE))
+       {
+@@ -131,7 +130,7 @@
+     }
+     catch (Exception e)
+     {
+-      logger.warn("Evaluation failed unexpectedly: ", e);
++      logger.warning("Evaluation failed unexpectedly: " + e);
+       return new TypeValuePair(ErrorType.TYPE, 
LibFormulaErrorValue.ERROR_UNEXPECTED_VALUE);
+     }
+   }
+diff -ru 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/function/DefaultFunctionRegistry.java
 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/function/DefaultFunctionRegistry.java
+--- 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/function/DefaultFunctionRegistry.java
 2021-02-23 14:41:06.980127564 +0000
++++ 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/function/DefaultFunctionRegistry.java
      2021-02-23 14:48:29.995445103 +0000
+@@ -25,9 +25,7 @@
+ import org.pentaho.reporting.libraries.base.util.HashNMap;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+ import org.pentaho.reporting.libraries.base.config.Configuration;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
+-
++import java.util.logging.Logger;
+ 
+ /**
+  * Creation-Date: 02.11.2006, 12:48:32
+@@ -36,7 +34,7 @@
+  */
+ public class DefaultFunctionRegistry implements FunctionRegistry
+ {
+-  private static final Log logger = 
LogFactory.getLog(DefaultFunctionRegistry.class);
++  private static final Logger logger = 
Logger.getLogger(DefaultFunctionRegistry.class.getName());
+   
+   private static final String FUNCTIONS_PREFIX = 
"org.pentaho.reporting.libraries.formula.functions.";
+   private static final String[] EMPTY_ARRAY = new String[0];
+@@ -72,7 +70,7 @@
+       final Function function = createFunction(aName);
+       if (function == null)
+       {
+-        logger.debug ("There is no such function: " + aName);
++        logger.config ("There is no such function: " + aName);
+       }
+       else
+       {
+@@ -132,7 +130,7 @@
+         (functionClass, DefaultFunctionRegistry.class, Function.class);
+     if (function == null)
+     {
+-      logger.debug ("There is no such function: " + name);
++      logger.config ("There is no such function: " + name);
+     }
+     else
+     {
+diff -ru 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/function/information/IsErrFunction.java
 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/function/information/IsErrFunction.java
+--- 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/function/information/IsErrFunction.java
       2021-02-23 14:41:06.983127594 +0000
++++ 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/function/information/IsErrFunction.java
    2021-02-23 14:48:54.904687864 +0000
+@@ -27,8 +27,7 @@
+ import org.pentaho.reporting.libraries.formula.typing.Type;
+ import org.pentaho.reporting.libraries.formula.typing.coretypes.ErrorType;
+ import org.pentaho.reporting.libraries.formula.typing.coretypes.LogicalType;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * This function returns true if the parameter is of error and not of error 
type NA.
+@@ -37,7 +36,7 @@
+  */
+ public class IsErrFunction implements Function
+ {
+-  private static final Log logger = LogFactory.getLog(IsErrFunction.class); 
++  private static final Logger logger = 
Logger.getLogger(IsErrFunction.class.getName());
+   private static final TypeValuePair RETURN_TRUE = new 
TypeValuePair(LogicalType.TYPE, Boolean.TRUE);
+   private static final TypeValuePair RETURN_FALSE = new 
TypeValuePair(LogicalType.TYPE, Boolean.FALSE);
+   private static final long serialVersionUID = 6749192734608313367L;
+@@ -61,7 +60,7 @@
+ 
+       if (ErrorType.TYPE.equals(type) && value instanceof ErrorValue)
+       {
+-        logger.warn ("Passing errors around is deprecated. Throw exceptions 
instead.");
++        logger.warning("Passing errors around is deprecated. Throw exceptions 
instead.");
+         final ErrorValue na = (ErrorValue) value;
+         if (na.getErrorCode() == LibFormulaErrorValue.ERROR_NA)
+         {
+diff -ru 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/function/information/IsNaFunction.java
 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/function/information/IsNaFunction.java
+--- 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/function/information/IsNaFunction.java
        2021-02-23 14:41:06.984127603 +0000
++++ 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/function/information/IsNaFunction.java
     2021-02-23 14:49:05.917795194 +0000
+@@ -27,8 +27,7 @@
+ import org.pentaho.reporting.libraries.formula.typing.Type;
+ import org.pentaho.reporting.libraries.formula.typing.coretypes.ErrorType;
+ import org.pentaho.reporting.libraries.formula.typing.coretypes.LogicalType;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * This function returns true if the parameter is of error type NA.
+@@ -39,7 +38,7 @@
+ {
+   private static final TypeValuePair RETURN_FALSE = new 
TypeValuePair(LogicalType.TYPE, Boolean.FALSE);
+   private static final TypeValuePair RETURN_TRUE = new 
TypeValuePair(LogicalType.TYPE, Boolean.TRUE);
+-  private static final Log logger = LogFactory.getLog(IsNaFunction.class);
++  private static final Logger logger = 
Logger.getLogger(IsNaFunction.class.getName());
+   private static final long serialVersionUID = 1205462839536368718L;
+ 
+   public IsNaFunction()
+@@ -61,7 +60,7 @@
+ 
+       if (ErrorType.TYPE.equals(type) && value instanceof ErrorValue)
+       {
+-        logger.warn ("Passing errors around is deprecated. Throw exceptions 
instead.");
++        logger.warning("Passing errors around is deprecated. Throw exceptions 
instead.");
+         final ErrorValue na = (ErrorValue) value;
+         if (na.getErrorCode() == LibFormulaErrorValue.ERROR_NA)
+         {
+diff -ru 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/lvalues/FormulaFunction.java
 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/lvalues/FormulaFunction.java
+--- 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/lvalues/FormulaFunction.java
  2021-02-23 14:41:06.988127642 +0000
++++ 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/lvalues/FormulaFunction.java
       2021-02-23 14:50:26.354579111 +0000
+@@ -17,8 +17,8 @@
+ 
+ package org.pentaho.reporting.libraries.formula.lvalues;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.formula.EvaluationException;
+ import org.pentaho.reporting.libraries.formula.FormulaContext;
+ import org.pentaho.reporting.libraries.formula.LibFormulaErrorValue;
+@@ -44,7 +44,7 @@
+  */
+ public class FormulaFunction extends AbstractLValue
+ {
+-  private static final Log logger = LogFactory.getLog(FormulaFunction.class);
++  private static final Logger logger = 
Logger.getLogger(FormulaFunction.class.getName());
+ 
+   private static class FormulaParameterCallback implements ParameterCallback
+   {
+@@ -74,9 +74,9 @@
+         final TypeValuePair converted = typeRegistry.convertTo(paramType, 
result);
+         if (converted == null)
+         {
+-          if (logger.isDebugEnabled())
++          if (logger.isLoggable(Level.CONFIG))
+           {
+-            logger.debug("Failed to evaluate parameter " + pos + " on 
function " + function);
++            logger.config("Failed to evaluate parameter " + pos + " on 
function " + function);
+           }
+           throw 
EvaluationException.getInstance(LibFormulaErrorValue.ERROR_INVALID_AUTO_ARGUMENT_VALUE);
+         }
+@@ -228,7 +228,7 @@
+     }
+     catch (Exception e)
+     {
+-      logger.error("Unexpected exception while evaluating", e);
++      logger.severe("Unexpected exception while evaluating: " + e);
+       throw 
EvaluationException.getInstance(LibFormulaErrorValue.ERROR_UNEXPECTED_VALUE);
+     }
+   }
+diff -ru 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/typing/DefaultTypeRegistry.java
 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/typing/DefaultTypeRegistry.java
+--- 
libformula-1.1.3.orig/source/org/pentaho/reporting/libraries/formula/typing/DefaultTypeRegistry.java
       2021-02-23 14:41:06.961127380 +0000
++++ 
libformula-1.1.3/source/org/pentaho/reporting/libraries/formula/typing/DefaultTypeRegistry.java
    2021-02-23 14:47:11.376678905 +0000
+@@ -35,8 +35,7 @@
+ import java.util.List;
+ import java.util.Locale;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.config.Configuration;
+ import org.pentaho.reporting.libraries.base.util.IOUtils;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+@@ -66,7 +65,7 @@
+  */
+ public class DefaultTypeRegistry implements TypeRegistry
+ {
+-  private static final Log logger = 
LogFactory.getLog(DefaultTypeRegistry.class);
++  private static final Logger logger = 
Logger.getLogger(DefaultTypeRegistry.class.getName());
+ 
+   private static class ArrayConverterCallback implements ArrayCallback
+   {
+@@ -599,7 +598,7 @@
+       }
+       else
+       {
+-        logger.warn("Assertation failure: Type declared to be a sequence, but 
no sequence found inside.");
++        logger.warning("Assertation failure: Type declared to be a sequence, 
but no sequence found inside.");
+         throw TypeConversionException.getInstance();
+       }
+     }
+@@ -612,7 +611,7 @@
+       }
+       else
+       {
+-        logger.warn("Assertation failure: Type declared to be array, but no 
array callback found inside.");
++        logger.warning("Assertation failure: Type declared to be array, but 
no array callback found inside.");
+         throw TypeConversionException.getInstance();
+       }
+     }
+@@ -651,7 +650,7 @@
+       }
+       else
+       {
+-        logger.warn("Assertation failure: Type declared to be array, but no 
array callback found inside.");
++        logger.warning("Assertation failure: Type declared to be array, but 
no array callback found inside.");
+         throw TypeConversionException.getInstance();
+       }
+     }
+--- 
a/source/org/pentaho/reporting/libraries/formula/function/logical/IfNaFunction.java
++++ 
b/source/org/pentaho/reporting/libraries/formula/function/logical/IfNaFunction.java
+@@ -17,8 +17,7 @@
+ 
+ package org.pentaho.reporting.libraries.formula.function.logical;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.formula.ErrorValue;
+ import org.pentaho.reporting.libraries.formula.EvaluationException;
+ import org.pentaho.reporting.libraries.formula.FormulaContext;
+@@ -37,7 +36,7 @@
+  */
+ public class IfNaFunction implements Function
+ {
+-  private static final Log logger = LogFactory.getLog(IfNaFunction.class);
++  private static final Logger logger = 
Logger.getLogger(IfNaFunction.class.getName());
+   private static final long serialVersionUID = -7517668261071087411L;
+ 
+   public IfNaFunction()
+@@ -67,7 +66,7 @@
+       value = parameters.getValue(0);
+       if (ErrorType.TYPE.equals(type) && value instanceof ErrorValue)
+       {
+-        logger.warn("Passing errors around is deprecated. Throw exceptions 
instead.");
++        logger.warning("Passing errors around is deprecated. Throw exceptions 
instead.");
+         final ErrorValue na = (ErrorValue) value;
+         if (na.getErrorCode() == LibFormulaErrorValue.ERROR_NA)
+         {
diff --git 
a/external/jfreereport/patches/libloader-1.1.3-remove-commons-logging.patch.1 
b/external/jfreereport/patches/libloader-1.1.3-remove-commons-logging.patch.1
new file mode 100644
index 000000000000..fad07d59ded8
--- /dev/null
+++ 
b/external/jfreereport/patches/libloader-1.1.3-remove-commons-logging.patch.1
@@ -0,0 +1,635 @@
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/DefaultResourceManagerBackend.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/DefaultResourceManagerBackend.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/DefaultResourceManagerBackend.java
      2021-04-07 10:55:58.343147414 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/DefaultResourceManagerBackend.java
   2021-04-07 11:08:48.389599751 +0100
+@@ -22,8 +22,8 @@
+ import java.util.Iterator;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.config.Configuration;
+ import org.pentaho.reporting.libraries.base.util.ObjectUtilities;
+ 
+@@ -34,7 +34,7 @@
+  */
+ public class DefaultResourceManagerBackend implements ResourceManagerBackend
+ {
+-  private static final Log logger = 
LogFactory.getLog(DefaultResourceManagerBackend.class);
++  private static final Logger logger = 
Logger.getLogger(DefaultResourceManagerBackend.class.getName());
+ 
+   private ArrayList resourceLoaders;
+   private ArrayList resourceBundleLoaders;
+@@ -280,9 +280,9 @@
+         {
+           // ignore it, try the next factory ...
+           exception = rex;
+-          if (logger.isDebugEnabled())
++          if (logger.isLoggable(Level.CONFIG))
+           {
+-            logger.debug("Failed at " + fact.getClass() + ": ", rex);
++            logger.config("Failed at " + fact.getClass() + ": " + rex);
+           }
+         }
+       }
+@@ -413,7 +413,7 @@
+     {
+       throw new UnrecognizedLoaderException("Invalid key: No resource-loader 
registered for schema: " + key.getSchema());
+     }
+-    logger.debug("Loaded " + key);
++    logger.config("Loaded " + key);
+     return loader.load(key);
+   }
+ 
+@@ -451,7 +451,7 @@
+           ResourceLoader.class);
+       if (loader != null)
+       {
+-        //Log.debug("Registering loader for " + loader.getSchema());
++        //Log.config("Registering loader for " + loader.getSchema());
+         registerLoader(loader);
+       }
+     }
+@@ -465,7 +465,7 @@
+           ResourceManager.class, ResourceBundleLoader.class);
+       if (loader != null)
+       {
+-        //Log.debug("Registering loader for " + loader.getSchema());
++        //Log.config("Registering loader for " + loader.getSchema());
+         registerBundleLoader(loader);
+       }
+     }
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/factory/drawable/DrawableWrapper.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/factory/drawable/DrawableWrapper.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/factory/drawable/DrawableWrapper.java
   2021-04-07 10:55:58.342147402 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/factory/drawable/DrawableWrapper.java
        2021-04-07 11:05:40.206289803 +0100
+@@ -27,8 +27,8 @@
+ import java.util.Collections;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ 
+ /**
+  * Creation-Date: 05.12.2007, 19:15:56
+@@ -37,7 +37,7 @@
+  */
+ public class DrawableWrapper
+ {
+-  private static final Log logger = LogFactory.getLog(DrawableWrapper.class);
++  private static final Logger logger = 
Logger.getLogger(DrawableWrapper.class.getName());
+   private static final Map drawables = Collections.synchronizedMap(new 
HashMap());
+ 
+   private Object backend;
+@@ -67,9 +67,9 @@
+           Modifier.isAbstract(modifiers) ||
+           Modifier.isStatic(modifiers))
+       {
+-        if (logger.isWarnEnabled())
++        if (logger.isLoggable(Level.WARNING))
+         {
+-          logger.warn("DrawMethod is not valid: " + aClass + '#' + 
drawMethod);
++          logger.warning("DrawMethod is not valid: " + aClass + '#' + 
drawMethod);
+         }
+         drawMethod = null;
+       }
+@@ -77,9 +77,9 @@
+     catch (NoSuchMethodException e)
+     {
+       // ignore exception
+-      if (logger.isWarnEnabled())
++      if (logger.isLoggable(Level.WARNING))
+       {
+-        logger.warn("The object is not a drawable: " + aClass);
++        logger.warning("The object is not a drawable: " + aClass);
+       }
+       drawMethod = null;
+     }
+@@ -141,9 +141,9 @@
+     }
+     catch (Exception e)
+     {
+-      if (logger.isDebugEnabled())
++      if (logger.isLoggable(Level.CONFIG))
+       {
+-        logger.warn("Invoking draw failed:", e);
++        logger.warning("Invoking draw failed: " + e);
+       }
+     }
+   }
+@@ -167,9 +167,9 @@
+     }
+     catch (Exception e)
+     {
+-      if (logger.isWarnEnabled())
++      if (logger.isLoggable(Level.WARNING))
+       {
+-        logger.warn("Invoking getPreferredSize failed:", e);
++        logger.warning("Invoking getPreferredSize failed: " + e);
+       }
+       return null;
+     }
+@@ -193,9 +193,9 @@
+     }
+     catch (Exception e)
+     {
+-      if (logger.isWarnEnabled())
++      if (logger.isLoggable(Level.WARNING))
+       {
+-        logger.warn("Invoking isKeepAspectRatio failed:", e);
++        logger.warning("Invoking isKeepAspectRatio failed: " + e);
+       }
+       return false;
+     }
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/file/FileResourceLoader.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/file/FileResourceLoader.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/file/FileResourceLoader.java
     2021-04-07 10:55:58.344147426 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/file/FileResourceLoader.java
  2021-04-07 11:03:22.711602044 +0100
+@@ -24,8 +24,7 @@
+ import java.util.HashMap;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceData;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceKey;
+ import 
org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException;
+@@ -43,7 +42,7 @@
+ public class FileResourceLoader implements ResourceLoader
+ {
+   public static final String SCHEMA_NAME = FileResourceLoader.class.getName();
+-  private static final Log logger = 
LogFactory.getLog(FileResourceLoader.class);
++  private static final Logger logger = 
Logger.getLogger(FileResourceLoader.class.getName());
+ 
+   public FileResourceLoader()
+   {
+@@ -210,7 +209,7 @@
+     }
+ 
+     // Log information
+-    logger.debug("Serializing a File Resource Key...");
++    logger.config("Serializing a File Resource Key...");
+     if (key.getParent() != null)
+     {
+       throw new ResourceException
+@@ -224,7 +223,7 @@
+       final String strIdentifier = file.getCanonicalPath();
+       final String result = ResourceKeyUtils.createStringResourceKey
+           (key.getSchema().toString(), strIdentifier, 
key.getFactoryParameters());
+-      logger.debug("Serialized File Resource Key: [" + result + "]");
++      logger.config("Serialized File Resource Key: [" + result + "]");
+       return result;
+     }
+     catch (IOException ioe)
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/raw/RawResourceLoader.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/raw/RawResourceLoader.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/raw/RawResourceLoader.java
       2021-04-07 10:55:58.343147414 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/raw/RawResourceLoader.java
    2021-04-07 11:01:56.064538444 +0100
+@@ -21,8 +21,7 @@
+ import java.util.HashMap;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceData;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceException;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceKey;
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/resource/ClassloaderResourceLoader.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/resource/ClassloaderResourceLoader.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/resource/ClassloaderResourceLoader.java
  2021-04-07 10:55:58.343147414 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/resource/ClassloaderResourceLoader.java
       2021-04-07 11:03:14.370499656 +0100
+@@ -21,8 +21,7 @@
+ import java.util.Map;
+ import java.net.URL;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceData;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceKey;
+ import 
org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException;
+@@ -41,7 +40,7 @@
+ public class ClassloaderResourceLoader implements ResourceLoader
+ {
+   public static final String SCHEMA_NAME = 
ClassloaderResourceLoader.class.getName();
+-  private static final Log logger = 
LogFactory.getLog(ClassloaderResourceLoader.class);
++  private static final Logger logger = 
Logger.getLogger(ClassloaderResourceLoader.class.getName());
+ 
+   public ClassloaderResourceLoader()
+   {
+@@ -197,7 +196,7 @@
+     }
+ 
+     // Log information
+-    logger.debug("Serializing a Classloader Resource Key...");
++    logger.config("Serializing a Classloader Resource Key...");
+     if (key.getParent() != null)
+     {
+       throw new ResourceException
+@@ -207,7 +206,7 @@
+     // Serialize the key
+     final String result = 
ResourceKeyUtils.createStringResourceKey(key.getSchema().toString(),
+         (String) key.getIdentifier(), key.getFactoryParameters());
+-    logger.debug("Serialized Classloader Resource Key: [" + result + "]");
++    logger.config("Serialized Classloader Resource Key: [" + result + "]");
+     return result;
+   }
+ 
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/URLResourceLoader.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/URLResourceLoader.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/URLResourceLoader.java
   2021-04-07 10:55:58.344147426 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/URLResourceLoader.java
        2021-04-07 11:03:41.998838804 +0100
+@@ -22,8 +22,7 @@
+ import java.util.HashMap;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceData;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceKey;
+ import 
org.pentaho.reporting.libraries.resourceloader.ResourceKeyCreationException;
+@@ -40,7 +39,7 @@
+ public class URLResourceLoader implements ResourceLoader
+ {
+   public static final String SCHEMA_NAME = URLResourceLoader.class.getName();
+-  private static final Log logger = 
LogFactory.getLog(URLResourceLoader.class);
++  private static final Logger logger = 
Logger.getLogger(URLResourceLoader.class.getName());
+ 
+   public URLResourceLoader()
+   {
+@@ -188,10 +187,10 @@
+     }
+ 
+     // Log information
+-    logger.debug("Serializing a Classloader Resource Key...");
++    logger.config("Serializing a Classloader Resource Key...");
+     if (key.getParent() != null)
+     {
+-      logger.warn("Serializing a Classloader Resource Key which contains a 
parent: key=[" + bundleKey + "] parent=["
++      logger.warning("Serializing a Classloader Resource Key which contains a 
parent: key=[" + bundleKey + "] parent=["
+           + key.getParent() + "]");
+     }
+ 
+@@ -199,7 +198,7 @@
+     final URL url = (URL) key.getIdentifier();
+     final String result = ResourceKeyUtils.createStringResourceKey
+         (key.getSchema().toString(), url.toExternalForm(), 
key.getFactoryParameters());
+-    logger.debug("Serialized Classloader Resource Key: [" + result + "]");
++    logger.config("Serialized Classloader Resource Key: [" + result + "]");
+     return result;
+   }
+ 
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/zip/ZipResourceLoader.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/zip/ZipResourceLoader.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/loader/zip/ZipResourceLoader.java
       2021-04-07 10:55:58.344147426 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/loader/zip/ZipResourceLoader.java
    2021-04-07 11:02:18.522814132 +0100
+@@ -21,8 +21,7 @@
+ import java.util.HashMap;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceData;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceException;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceKey;
+@@ -40,7 +39,7 @@
+ public class ZipResourceLoader implements ResourceLoader
+ {
+   public static final String SCHEMA_NAME = ZipResourceLoader.class.getName();
+-  private static final Log logger = 
LogFactory.getLog(ZipResourceLoader.class);
++  private static final Logger logger = 
Logger.getLogger(ZipResourceLoader.class.getName());
+ 
+   public ZipResourceLoader()
+   {
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHCacheModule.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHCacheModule.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHCacheModule.java
        2021-04-07 10:55:58.345147438 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHCacheModule.java
     2021-04-07 10:58:52.758288370 +0100
+@@ -20,8 +20,7 @@
+ import org.pentaho.reporting.libraries.base.boot.AbstractModule;
+ import org.pentaho.reporting.libraries.base.boot.ModuleInitializeException;
+ import org.pentaho.reporting.libraries.base.boot.SubSystem;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Logger;
+ 
+ /**
+  * Creation-Date: 13.04.2006, 16:29:07
+@@ -30,7 +29,7 @@
+  */
+ public class EHCacheModule extends AbstractModule
+ {
+-  public static final Log CACHE_MONITOR = 
LogFactory.getLog(EHCacheModule.class.getName() + "#CacheLog"); 
++  public static final Logger CACHE_MONITOR = 
Logger.getLogger(EHCacheModule.class.getName() + "#CacheLog"); 
+ 
+   public EHCacheModule() throws ModuleInitializeException
+   {
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHResourceFactoryCache.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHResourceFactoryCache.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHResourceFactoryCache.java
       2021-04-07 10:55:58.345147438 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/modules/cache/ehcache/EHResourceFactoryCache.java
    2021-04-07 10:59:17.251589016 +0100
+@@ -20,8 +20,8 @@
+ import net.sf.ehcache.Cache;
+ import net.sf.ehcache.CacheException;
+ import net.sf.ehcache.Element;
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.resourceloader.Resource;
+ import org.pentaho.reporting.libraries.resourceloader.ResourceKey;
+ import 
org.pentaho.reporting.libraries.resourceloader.cache.ResourceFactoryCache;
+@@ -110,7 +109,7 @@
+     }
+   }
+ 
+-  private static final Log logger = 
LogFactory.getLog(EHResourceFactoryCache.class);
++  private static final Logger logger = 
Logger.getLogger(EHResourceFactoryCache.class.getName());
+   private Cache factoryCache;
+ 
+   public EHResourceFactoryCache(final Cache factoryCache)
+@@ -128,16 +128,16 @@
+       final Resource res = getInternal(key, target[i]);
+       if (res != null)
+       {
+-        if (EHCacheModule.CACHE_MONITOR.isDebugEnabled())
++        if (EHCacheModule.CACHE_MONITOR.isLoggable(Level.CONFIG))
+         {
+-          EHCacheModule.CACHE_MONITOR.debug("Res  Cache Hit  " + key);
++          EHCacheModule.CACHE_MONITOR.config("Res  Cache Hit  " + key);
+         }
+         return res;
+       }
+     }
+-    if (EHCacheModule.CACHE_MONITOR.isDebugEnabled())
++    if (EHCacheModule.CACHE_MONITOR.isLoggable(Level.CONFIG))
+     {
+-      EHCacheModule.CACHE_MONITOR.debug("Res  Cache Miss  " + key);
++      EHCacheModule.CACHE_MONITOR.config("Res  Cache Miss  " + key);
+     }
+     return null;
+   }
+@@ -168,9 +168,9 @@
+     }
+     catch (CacheException e)
+     {
+-      if (logger.isDebugEnabled())
++      if (logger.isLoggable(Level.CONFIG))
+       {
+-        logger.debug("Failed to retrieve resource for key " + key, e);
++        logger.config("Failed to retrieve resource for key " + key + ": " + 
e);
+       }
+       return null;
+     }
+@@ -185,9 +185,9 @@
+     }
+     catch (Exception e)
+     {
+-      if (logger.isDebugEnabled())
++      if (logger.isLoggable(Level.CONFIG))
+       {
+-        logger.debug("Failed to store resource for key " + source, e);
++        logger.config("Failed to store resource for key " + source + ": " + 
e);
+       }
+       // ignore ... the object is not serializable ..
+     }
+diff -ru 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/ResourceKeyUtils.java
 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/ResourceKeyUtils.java
+--- 
libloader-1.1.3.orig/source/org/pentaho/reporting/libraries/resourceloader/ResourceKeyUtils.java
   2021-04-07 10:55:58.342147402 +0100
++++ 
libloader-1.1.3/source/org/pentaho/reporting/libraries/resourceloader/ResourceKeyUtils.java
        2021-04-07 11:06:27.248867251 +0100
+@@ -27,8 +27,8 @@
+ import java.util.Iterator;
+ import java.util.Map;
+ 
+-import org.apache.commons.logging.Log;
+-import org.apache.commons.logging.LogFactory;
++import java.util.logging.Level;
++import java.util.logging.Logger;
+ import org.pentaho.reporting.libraries.base.util.CSVQuoter;
+ import org.pentaho.reporting.libraries.base.util.CSVTokenizer;
+ import org.pentaho.reporting.libraries.base.util.IOUtils;
+@@ -42,7 +42,7 @@
+ {
+   private static final String DELIMITER = ";";
+   private static final String SERIALIZATION_PREFIX = "resourcekey:";
+-  private static final Log logger = LogFactory.getLog(ResourceManager.class);
++  private static final Logger logger = 
Logger.getLogger(ResourceManager.class.getName());
+ 
+   /**
+    * Returns a string representation of the ResourceKey based on the pieces 
that are passed as parameters
+@@ -169,7 +169,7 @@
+ 
+       sb.append(quoter.doQuoting(entrySb.toString()));
+     }
+-    logger.debug("Converted ResourceKey's Factory Parameters to String: [" + 
sb.toString() + "]");
++    logger.config("Converted ResourceKey's Factory Parameters to String: [" + 
sb.toString() + "]");
+     return sb.toString();
+   }
+ 
+@@ -226,9 +226,9 @@
+       params.put(key, value);
+     }
+ 
+-    if (logger.isDebugEnabled())
++    if (logger.isLoggable(Level.CONFIG))
+     {
+-      logger.debug("Converted ResourceKey's Factory Parameter String to a 
Map: [" + factoryParameters
++      logger.config("Converted ResourceKey's Factory Parameter String to a 
Map: [" + factoryParameters
+           + "] -> map of size " + params.size());
+     }
+     return params;
+@@ -369,7 +369,7 @@
+       }
+       catch (IOException e)
+       {
+-        logger.error("Error closing input stream", e);
++        logger.severe("Error closing input stream: " + e);
+       }
+     }
+   }

... etc. - the rest is truncated

Reply via email to