I'm trying to use an XML configuration file for Log4j2 that is embedded in my Java application, but is not working.
The code:
ConfigurationSource source = new ConfigurationSource(Main.class.getResourceAsStream("/in/gunbound/prelauncher/server/log4j2/log4j2.xml"));
ConfigurationFactory factory = (ConfigurationFactory) XMLConfigurationFactory.getInstance().getConfiguration(source);
ConfigurationFactory.setConfigurationFactory(factory);
The error:
Exception in thread "main" java.lang.ClassCastException: org.apache.logging.log4j.core.config.XMLConfiguration cannot be cast to org.apache.logging.log4j.core.config.ConfigurationFactory at in.gunbound.prelauncher.server.Main.main(Main.java:62)
You don't need to use the ConfigurationFactory
when you use a XML-Configuration file. Just make sure your XML file is setup correctly.
Filename must be log4j2.xml
The file must me added to the classPath.
Get the logger with the right name in your applicaton, the same name you used to set up the logger in your xml-file, have a look here.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With