Top Description Fields Constructors Methods
com.sun.faces.util

public Class DebugUtil

extends Object
Class Inheritance
Imports
java.io.ByteArrayOutputStream, .IOException, .ObjectOutputStream, .OutputStream, .PrintStream, .PrintWriter, .Serializable, .StringWriter, .UnsupportedEncodingException, .Writer, java.util.Iterator, .List, .Map, .Set, java.util.logging.Level, .Logger, com.sun.faces.RIConstants, com.sun.faces.io.FastStringWriter, com.sun.faces.renderkit.RenderKitUtils, jakarta.el.ValueExpression, jakarta.faces.component.UIComponent, .ValueHolder, jakarta.faces.context.FacesContext, jakarta.faces.model.SelectItem

DebugUtil is a class ... Lifetime And Scope

Field Summary

Modifier and TypeField and Description
private static int
private static boolean
private static final Logger

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
private static void
private static void
private static void
indentPrintln(Logger out, Object toPrint)

protected void
init()

public static void
printList(List<E> list, Logger out)

public static void
printState(Map<K, V> state, Logger out)

public static String

Returns:

the output of printTree() as a String. Useful when used with a Logger. For example: logger.log(DebugUtil.printTree(root));
printTree
(UIComponent
the root component
root
)

public static void
printTree(UIComponent
the root component
root
,
PrintStream
the PrintStream to write to
out
)

Output of printTree() to a PrintStream.

public static void
printTree(UIComponent root, Logger logger, Level level)

public static void
public static void
printTree(Object[] root, Writer out)

public static void
printTree(Object[] root, Logger out)

public static void
setKeepWaiting(boolean keepWaiting)

public static void
simplePrintTree(UIComponent root, String duplicateId, Writer out)

public static void
waitForDebugger()

Usage:

Place a call to this method in the earliest possible entry point of your servlet app.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

curDepthback to summary
private static int curDepth
keepWaitingback to summary
private static boolean keepWaiting
LOGGERback to summary
private static final Logger LOGGER

Constructor Detail

DebugUtilback to summary
public DebugUtil()

Method Detail

assertSerializabilityback to summary
private static void assertSerializability(StringBuilder builder, Object toPrint)
indentPrintlnback to summary
private static void indentPrintln(Writer out, String str)
indentPrintlnback to summary
private static void indentPrintln(Logger out, Object toPrint)
initback to summary
protected void init()
printListback to summary
public static void printList(List<E> list, Logger out)
printStateback to summary
public static void printState(Map<K, V> state, Logger out)
printTreeback to summary
public static String printTree(UIComponent root)
Parameters
root:UIComponent

the root component

Returns:String

the output of printTree() as a String. Useful when used with a Logger. For example: logger.log(DebugUtil.printTree(root));

printTreeback to summary
public static void printTree(UIComponent root, PrintStream out)

Output of printTree() to a PrintStream. Usage: DebugUtil.printTree(root, System.out);

Parameters
root:UIComponent

the root component

out:PrintStream

the PrintStream to write to

printTreeback to summary
public static void printTree(UIComponent root, Logger logger, Level level)
printTreeback to summary
public static void printTree(UIComponent root, Writer out)
printTreeback to summary
public static void printTree(Object[] root, Writer out)
printTreeback to summary
public static void printTree(Object[] root, Logger out)
setKeepWaitingback to summary
public static void setKeepWaiting(boolean keepWaiting)
simplePrintTreeback to summary
public static void simplePrintTree(UIComponent root, String duplicateId, Writer out)
waitForDebuggerback to summary
public static void waitForDebugger()

Usage:

Place a call to this method in the earliest possible entry point of your servlet app. It will cause the app to enter into an infinite loop, sleeping until the static var keepWaiting is set to false. The idea is that you attach your debugger to the servlet, then, set a breakpoint in this method. When it is hit, you use the debugger to set the keepWaiting class var to false.