Skip to content

NullPointerException when Log4J is loaded #2

@taranion

Description

@taranion

When I start my server and the System.Logger LOG4J bridge (org.apache.logging.log4j:log4j-jpl:2.22.1) is loaded, I get the following NPE:

java.lang.NullPointerException: Cannot invoke "java.util.logging.Logger.setFilter(java.util.logging.Filter)" because the return value of "java.util.logging.LogManager.getLogger(String)" is null
	at robaho.net.httpserver.ServerImpl.<init>(ServerImpl.java:134)
	at robaho.net.httpserver.HttpServerImpl.<init>(HttpServerImpl.java:43)
	at robaho.net.httpserver.DefaultHttpServerProvider.createHttpServer(DefaultHttpServerProvider.java:35)
	at jdk.httpserver/com.sun.net.httpserver.HttpServer.create(HttpServer.java:152)
	at org.prelle.mud.websocket.WebsocketConnector.start(WebsocketConnector.java:125)

When I remove all traces of the logging provider, it works.

The problem seems to be that LogManager.getLogger returns a null pointer because the Logger isn't known yet.
It might be better to use Logger.getLogger instead, because that method creates a named Logger if it does not exist yet.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions