Index: xstream/src/java/com/thoughtworks/xstream/converters/reflection/SerializationMethodInvoker.java
===================================================================
--- xstream/src/java/com/thoughtworks/xstream/converters/reflection/SerializationMethodInvoker.java	(revision 2304)
+++ xstream/src/java/com/thoughtworks/xstream/converters/reflection/SerializationMethodInvoker.java	(working copy)
@@ -66,7 +66,10 @@
             final Method readResolveMethod = getRRMethod(resultType, "readResolve");
             if (readResolveMethod != null) {
                 try {
-                    return readResolveMethod.invoke(result);
+                    Object invokeResult = readResolveMethod.invoke(result);
+                    if (invokeResult == null)
+                        throw new ObjectAccessException(resultType.getName()  + ".readResolve() returned null");
+                    return invokeResult;
                 } catch (final IllegalAccessException e) {
                     throw new ObjectAccessException("Could not call " + resultType.getName() + ".readResolve()", e);
                 } catch (final InvocationTargetException e) {
