diff --git a/common/source/java/ch/systemsx/cisd/common/collections/TableMap.java b/common/source/java/ch/systemsx/cisd/common/collections/TableMap.java
index 24f4b6eaf37e69889d5d75a8d572ba0a5338205f..fc0f06d1ccf72425ac257d5ee1b7270a010e477f 100644
--- a/common/source/java/ch/systemsx/cisd/common/collections/TableMap.java
+++ b/common/source/java/ch/systemsx/cisd/common/collections/TableMap.java
@@ -23,6 +23,8 @@ import java.util.LinkedHashMap;
 import java.util.Map;
 import java.util.Set;
 
+import org.apache.commons.lang.builder.ToStringBuilder;
+
 /**
  * A table of rows of type <code>E</code> with random access via a key of type <code>K</code>.
  * 
@@ -188,6 +190,16 @@ public class TableMap<K, E> implements Iterable<E>
         return Collections.unmodifiableSet(map.keySet());
     }
 
+    //
+    // Object
+    //
+
+    @Override
+    public final String toString()
+    {
+        return ToStringBuilder.reflectionToString(this);
+    }
+
     /**
      * Creates an iterator of the rows in the order they have been added. Removing is not supported.
      */
diff --git a/common/source/java/ch/systemsx/cisd/common/collections/TableMapNonUniqueKey.java b/common/source/java/ch/systemsx/cisd/common/collections/TableMapNonUniqueKey.java
index eb7e76fac64518890d0f88029a428ba63176a76b..bf657c1b6aa167f307965eb9eb2eca309f73cb6c 100644
--- a/common/source/java/ch/systemsx/cisd/common/collections/TableMapNonUniqueKey.java
+++ b/common/source/java/ch/systemsx/cisd/common/collections/TableMapNonUniqueKey.java
@@ -23,6 +23,8 @@ import java.util.Map;
 import java.util.NoSuchElementException;
 import java.util.Set;
 
+import org.apache.commons.lang.builder.ToStringBuilder;
+
 /**
  * A table of rows of type <code>E</code> with random access via a key of type <code>K</code>
  * where the key does not have to be unique.
@@ -146,6 +148,16 @@ public class TableMapNonUniqueKey<K, E> implements Iterable<E>
         return map.get(key);
     }
 
+    //
+    // Object
+    //
+
+    @Override
+    public final String toString()
+    {
+        return ToStringBuilder.reflectionToString(this);
+    }
+
     /**
      * Creates an iterator of the rows. Removing is not supported.
      * <p>