diff --git a/webconsole-plugins/memoryusage/src/main/java/org/apache/felix/webconsole/plugins/memoryusage/internal/MemoryUsagePanel.java b/webconsole-plugins/memoryusage/src/main/java/org/apache/felix/webconsole/plugins/memoryusage/internal/MemoryUsagePanel.java
index d4f44ee..a20341f 100644
--- a/webconsole-plugins/memoryusage/src/main/java/org/apache/felix/webconsole/plugins/memoryusage/internal/MemoryUsagePanel.java
+++ b/webconsole-plugins/memoryusage/src/main/java/org/apache/felix/webconsole/plugins/memoryusage/internal/MemoryUsagePanel.java
@@ -78,7 +78,7 @@
         final PrintWriter pw = res.getWriter();
 
         final StringBuilder statusBuf = new StringBuilder(1024);
-        statusBuf.append('[');
+        statusBuf.append('{');
 
         final StringBuilder filesBuf = new StringBuilder(1024);
         filesBuf.append('[');
@@ -91,26 +91,22 @@
             for (File file : files)
             {
                 filesBuf.append('{');
-                filesBuf.append("'name':'").append(file.getName()).append("',");
-                filesBuf.append("'date':").append(file.lastModified()).append(",");
-                filesBuf.append("'size':").append(file.length());
+                filesBuf.append("'name':'").append(file.getName());
+                filesBuf.append("',").append("'date':").append(file.lastModified());
+                totalSize += support.formatNumber(filesBuf, "size", file.length());
                 filesBuf.append("},");
-
-                totalSize += file.length();
             }
 
-            statusBuf.append(files.length);
-            statusBuf.append(',');
-            statusBuf.append(totalSize);
-
+            statusBuf.append("'files':").append(files.length);
+            support.formatNumber(statusBuf, "total", totalSize);
         }
         else
         {
-            statusBuf.append("0,0");
+            statusBuf.append("'files:0,total:0'");
         }
 
         filesBuf.append(']');
-        statusBuf.append(']');
+        statusBuf.append('}');
 
         JsonPrintHelper jph = new JsonPrintHelper();
         support.printOverallMemory(jph);
diff --git a/webconsole-plugins/memoryusage/src/main/resources/templates/memoryusage.html b/webconsole-plugins/memoryusage/src/main/resources/templates/memoryusage.html
index 3b2106a..0ca537e 100644
--- a/webconsole-plugins/memoryusage/src/main/resources/templates/memoryusage.html
+++ b/webconsole-plugins/memoryusage/src/main/resources/templates/memoryusage.html
@@ -93,7 +93,7 @@
 
 $(document).ready(function() {
 
-    $(".statline").html("${dump.statline}".msgFormat(__status__[0].toLocaleString(), __status__[1].toLocaleString()));
+    $(".statline").html("${dump.statline}".msgFormat(__status__.files, __status__.total));
 
     renderOverall(__overall__);
     renderPools(__pools__);
