Uploaded image for project: 'JBoss Modules'
  1. JBoss Modules
  2. MODULES-393

Make jboss-modules a Java agent and allow other agents to be set as module arguments

XMLWordPrintable

      The JBoss Log Manager allows for a module to be defined and it uses JBoss Modules to load said module. However if the log manager is on the boot class path, the log manager cannot see JBoss Modules and therefore cannot load the module.

      Example exception:

      Failed to read or configure the org.jboss.logmanager.LogManager
      java.lang.IllegalArgumentException: Failed to load module "org.jboss.logmanager" for formatter "JSON"
          at org.jboss.logmanager.config.AbstractPropertyConfiguration.<init>(AbstractPropertyConfiguration.java:65)
          at org.jboss.logmanager.config.FormatterConfigurationImpl.<init>(FormatterConfigurationImpl.java:30)
          at org.jboss.logmanager.config.LogContextConfigurationImpl.addFormatterConfiguration(LogContextConfigurationImpl.java:172)
          at org.jboss.logmanager.PropertyConfigurator.configureFormatter(PropertyConfigurator.java:631)
          at org.jboss.logmanager.PropertyConfigurator.configureHandler(PropertyConfigurator.java:701)
          at org.jboss.logmanager.PropertyConfigurator.configureLogger(PropertyConfigurator.java:583)
          at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:521)
          at org.jboss.logmanager.PropertyConfigurator.configure(PropertyConfigurator.java:97)
          at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:170)
          at org.jboss.logmanager.LogManager.readConfiguration(LogManager.java:132)
          at java.util.logging.LogManager$3.run(LogManager.java:399)
          at java.util.logging.LogManager$3.run(LogManager.java:396)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:396)
          at java.util.logging.LogManager.access$800(LogManager.java:145)
          at java.util.logging.LogManager$2.run(LogManager.java:345)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.util.logging.LogManager.ensureLogManagerInitialized(LogManager.java:338)
          at java.util.logging.LogManager.getLogManager(LogManager.java:378)
          at org.jboss.modules.Main.main(Main.java:523)
      Caused by: java.lang.NoClassDefFoundError: org/jboss/modules/ModuleLoader
          at org.jboss.logmanager.config.AbstractPropertyConfiguration$ModuleFinder.getClassLoader(AbstractPropertyConfiguration.java:556)
          at org.jboss.logmanager.config.AbstractPropertyConfiguration.<init>(AbstractPropertyConfiguration.java:63)
          ... 19 more
      

      Making JBoss Modules an agent and allowing other agents to be passed via module arguments avoids the need for the jboss-logmangaer to be on the boot class path. This also will fix issues with the JBoss Logger Finder issue LOGMGR-254.

              jperkins-rhn James Perkins
              jperkins-rhn James Perkins
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: