Hitachi

Hitachi Application Server V10 Definition Reference Guide (For UNIX® Systems)


7.10.5 -XX:[+|-]HitachiTrueTypeInLocals

-XX:[+|-]HitachiTrueTypeInLocals outputs the actual object type names to the local variable information.

Description

-XX:[+|-]HitachiTrueTypeInLocals outputs the name of the object type that is set for a class or an array-type local variable when local variable information is collected. The type name appears in the parentheses after the character string that represents the variable value.

Note that, if the class or array-type object stored in the local variable is a Java VM internal object, internal type is output.

Prerequisite options
  • -XX:+HitachiLocalsInThrowable

  • -XX:+HitachiLocalsInStackTrace

Syntax

-XX:[+|-]HitachiTrueTypeInLocals

Specifiable values

Type: String

-XX:+HitachiTrueTypeInLocals

Outputs the actual object type names to the local variable information.

-XX:-HitachiTrueTypeInLocals

Does not output the actual object type names to the local variable information.

Default value

If the definition item is omitted:

-XX:-HitachiTrueTypeInLocals

Example

An output example when the following Java program example is used is shown below.

Java program example
class Example3 {
    public static void main(String[] args) {
        Example3 e3 = new Example3();
        e3.method();  // 4th line
    }
 
    void method() {
        String l1 = "local 1";
        StringBuffer l2 = new StringBuffer(l1);
        l2.append(" + local 2");
        Boolean l3 = new Boolean(false);
        Character l4 = new Character('X');
        Long l5 = new Long(Long.MIN_VALUE);  // Minimum value of the long data type
        Object l6 = new Thread();
        Object[] l7 = new Thread[10];
 
        try {
          <An exception occurred!>  // 18th line
        } catch (Exception e) {
          e.printStackTrace();
        }
    }
 
    public String toString() {
        return "I am an Example3 instance.";
    }
}
Example

When the -XX:+HitachiLocalsSimpleFormat option and -XX:HitachiCallToString=full are specified

  at Example3.method(Example3.java:18)
    locals: 
      (Example3) this = <0xaa07db58> "I am an Example3 instance." (Example3)
      (java.lang.String) l1 = <0xae173a28> "local 1" (java.lang.String)
      (java.lang.StringBuffer) l2 = <0xaa07dca0> "local 1 + local 2" 
      (java.lang.StringBuffer)
      (java.lang.Boolean) l3 = <0xaa07de18> "false" (java.lang.Boolean)
      (java.lang.Character) l4 = <0xaa07df68> "X" (java.lang.Character)
      (java.lang.Long) l5 = <0xaa07e078> "-9223372036854775808" (java.lang.Long)
      (java.lang.Object) l6 = <0xaa07e1a8> "Thread[Thread-0,5,main]" 
      (java.lang.Thread)
      (java.lang.Object[]) l7 = <0xaa07e298> "[Ljava.lang.Thread;@26e431" 
      (java.lang.Thread[])
  at Example3.main(Example3.java:4)
    locals: 
...