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: