diff --git a/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/ConfigurationRender.java b/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/ConfigurationRender.java
index 4206e8b..1f1e137 100644
--- a/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/ConfigurationRender.java
+++ b/webconsole/src/main/java/org/apache/felix/webconsole/internal/misc/ConfigurationRender.java
@@ -556,7 +556,8 @@
         if ( group != null )
         {
             StringBuffer info = new StringBuffer();
-            info.append( '[' );
+            info.append("ThreadGroup ").append(group.getName());
+            info.append( " [" );
             info.append( "maxprio=" ).append( group.getMaxPriority() );
 
             info.append( ", parent=" );
@@ -573,7 +574,7 @@
             info.append( ", isDestroyed=" ).append( group.isDestroyed() );
             info.append( ']' );
 
-            infoLine( pw, null, group.getName(), info.toString() );
+            infoLine( pw, null, null, info.toString() );
 
             int numThreads = group.activeCount();
             Thread[] threads = new Thread[numThreads * 2];
@@ -593,7 +594,7 @@
         if ( thread != null )
         {
             StringBuffer info = new StringBuffer();
-            info.append( thread.getName() );
+            info.append("Thread ").append( thread.getName() );
             info.append( " [" );
             info.append( "priority=" ).append( thread.getPriority() );
             info.append( ", alive=" ).append( thread.isAlive() );
@@ -602,7 +603,7 @@
             info.append( ", loader=" ).append( thread.getContextClassLoader() );
             info.append( ']' );
 
-            infoLine( pw, "  ", String.valueOf( thread.getId() ), info.toString() );
+            infoLine( pw, "  ", null, info.toString() );
         }
     }
 }
