diff --git a/common/source/java/ch/systemsx/cisd/common/evaluator/Evaluator.java b/common/source/java/ch/systemsx/cisd/common/evaluator/Evaluator.java
index f64c121c2f53262ecf9ede264f573baf3927a0d2..1563a94d8973e1533614e2b3c7d4d4975f8cc1ba 100644
--- a/common/source/java/ch/systemsx/cisd/common/evaluator/Evaluator.java
+++ b/common/source/java/ch/systemsx/cisd/common/evaluator/Evaluator.java
@@ -291,11 +291,13 @@ public final class Evaluator
     /**
      * Evaluates the expression of this evaluator and returns the result as a String. This method
      * can always be called.
+     * <p>
+     * NOTE: null will be returned if expression results in {@link PyNone}
      */
     public String evalAsString() throws EvaluatorException
     {
-        doEval();
-        return getInterpreterResult().toString();
+        Object result = eval();
+        return result == null ? null : result.toString();
     }
 
     private void doEval() throws EvaluatorException
diff --git a/common/sourceTest/java/ch/systemsx/cisd/common/evaluator/EvaluatorTest.java b/common/sourceTest/java/ch/systemsx/cisd/common/evaluator/EvaluatorTest.java
index c1deafeba3fc0e5a44eb7206368d52a8c6440944..954c6d6afa0ab5733e345bc81501f4cbacfb6219 100644
--- a/common/sourceTest/java/ch/systemsx/cisd/common/evaluator/EvaluatorTest.java
+++ b/common/sourceTest/java/ch/systemsx/cisd/common/evaluator/EvaluatorTest.java
@@ -40,6 +40,14 @@ public class EvaluatorTest
         Evaluator.initialize();
     }
 
+    @Test
+    public void testEvalWithNull()
+    {
+        final Evaluator eval = new Evaluator("None");
+        assertEquals(null, eval.eval());
+        assertEquals(null, eval.evalAsString());
+    }
+
     @Test
     public void testSimpleExpression()
     {