diff --git a/common/source/java/ch/systemsx/cisd/common/utilities/ClassUtils.java b/common/source/java/ch/systemsx/cisd/common/utilities/ClassUtils.java
index a366c22fc745fc08861d3294e8876518e2591dbd..f539f121acfcc7cd9ee67d27374f2854d995e945 100644
--- a/common/source/java/ch/systemsx/cisd/common/utilities/ClassUtils.java
+++ b/common/source/java/ch/systemsx/cisd/common/utilities/ClassUtils.java
@@ -165,7 +165,8 @@ public final class ClassUtils
                     + "' can not be instanciated as it is an interface.";
             assert superClazz.isAssignableFrom(clazz) : "Class '" + clazz.getName() + "' does not implements/extends '"
                     + superClazz.getName() + "'.";
-            if (initargs == null)
+            // (Object[]) null ||Ê(Object) null
+            if (initargs == null || (initargs.length == 1 && initargs[0] == null))
             {
                 return createInstance(clazz);
             }
diff --git a/common/sourceTest/java/ch/systemsx/cisd/common/utilities/ClassUtilsTest.java b/common/sourceTest/java/ch/systemsx/cisd/common/utilities/ClassUtilsTest.java
index 751600c1d4e91a35cbbcc659de6952c9fe343376..9fc609a1e25b7e18972b75872055d5631682113d 100644
--- a/common/sourceTest/java/ch/systemsx/cisd/common/utilities/ClassUtilsTest.java
+++ b/common/sourceTest/java/ch/systemsx/cisd/common/utilities/ClassUtilsTest.java
@@ -82,7 +82,7 @@ public final class ClassUtilsTest
     @Test
     public void testCreateWithDefaultConstructor()
     {
-        CharSequence cs = ClassUtils.create(CharSequence.class, StringBuffer.class.getName(), (Object) null);
+        CharSequence cs = ClassUtils.create(CharSequence.class, StringBuffer.class.getName(), (Object[]) null);
         assertTrue(cs instanceof StringBuffer);
         assertEquals(0, cs.length());
     }
@@ -132,7 +132,7 @@ public final class ClassUtilsTest
     {
         try
         {
-            ClassUtils.create(Float.class, Integer.class.getName(), (Object) null);
+            ClassUtils.create(Float.class, Integer.class.getName(), (Object[]) null);
             fail("AssertionError expected.");
         } catch (AssertionError e)
         {
@@ -145,7 +145,7 @@ public final class ClassUtilsTest
     {
         try
         {
-            ClassUtils.create(Float.class, CharSequence.class.getName(), (Object) null);
+            ClassUtils.create(Float.class, CharSequence.class.getName(), (Object[]) null);
             fail("AssertionError expected.");
         } catch (AssertionError e)
         {