The LoggerTraceListener causes infinite loops in debugging output when the user's jre/lib/logging.properties is modified to increase the amount of output processed by the ConsoleHandler: java.util.logging.ConsoleHandler.level = FINEST Roughly, what happens is that some logger causes output to be printed to its implicit ConsoleHandler. The deployment code's interception of stdout and stderr in the Trace code causes this output to be handed to each TraceListener. The LoggerTraceListener receives the output and passes it to its internal Logger, which causes it to be printed to its implicit ConsoleHandler, and the process repeats. This prevents logging from working effectively in the context of the deployment technologies (Java Web Start and the Java Plug-In) since much logging code in the Java SE workspace is sent at a lower level than the default INFO level the logging ConsoleHandler is set to. Thanks to ###@###.### for pointing out approximately where in the code the problem was.
|