diff --git a/src/fr/inrialpes/exmo/align/impl/ObjectAlignment.java b/src/fr/inrialpes/exmo/align/impl/ObjectAlignment.java
index 4e2af6f1a59d4b7ff63a26d3f91a7ea660a5ad2f..24820d7def2559124fc0acf352ad643d1eedec12 100644
--- a/src/fr/inrialpes/exmo/align/impl/ObjectAlignment.java
+++ b/src/fr/inrialpes/exmo/align/impl/ObjectAlignment.java
@@ -150,13 +150,23 @@ public class ObjectAlignment extends BasicAlignment {
 	alignment.setExtensions( al.convertExtension( "ObjectURIConverted", "fr.inrialpes.exmo.align.ObjectAlignment#toObject" ) );
 	LoadedOntology<Object> o1 = (LoadedOntology<Object>)alignment.getOntologyObject1(); // [W:unchecked]
 	LoadedOntology<Object> o2 = (LoadedOntology<Object>)alignment.getOntologyObject2(); // [W:unchecked]
+	Object obj1 = null;
+	Object obj2 = null;
+
 	try {
 	    for ( Cell c : al ) {
-		Cell newc = alignment.addAlignCell( c.getId(), 
-						    o1.getEntity( c.getObject1AsURI(alignment) ),
-						    o2.getEntity( c.getObject2AsURI(alignment) ),
-						    c.getRelation(), 
-						    c.getStrength() );
+		try {
+		    obj1 = o1.getEntity( c.getObject1AsURI( alignment ) );
+		} catch ( NullPointerException npe ) {
+		    throw new AlignmentException( "Cannot dereference entity "+c.getObject1AsURI( alignment ), npe );
+		}
+		try {
+		    obj2 = o2.getEntity( c.getObject2AsURI( alignment ) );
+		} catch ( NullPointerException npe ) {
+		    throw new AlignmentException( "Cannot dereference entity "+c.getObject2AsURI( alignment ), npe );
+		}
+		Cell newc = alignment.addAlignCell( c.getId(), obj1, obj2,
+						    c.getRelation(), c.getStrength() );
 		Collection<String[]> exts = c.getExtensions();
 		if ( exts != null ) {
 		    for ( String[] ext : exts ){