diff --git a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java b/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java
index 45112e8073ece412d2d2f01c067820d869c1f70c..5cc58e8d1597cc1f661a4d5d059c7d691e79f536 100644
--- a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java
+++ b/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java
@@ -13,6 +13,7 @@ import javax.xml.bind.annotation.XmlAccessorType;
 import javax.xml.bind.annotation.XmlAttribute;
 import javax.xml.bind.annotation.XmlElement;
 import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlTransient;
 
 
 /**
@@ -53,6 +54,10 @@ public class ErrorSummary {
     protected ErrorType type;
     @XmlAttribute(name = "hasDetail", required = true)
     protected boolean hasDetail;
+    
+    // Required by {job-id}/error endpoint
+    @XmlTransient
+    protected String detailMessage;
 
     /**
      * Gets the value of the message property.
@@ -117,5 +122,13 @@ public class ErrorSummary {
     public void setHasDetail(boolean value) {
         this.hasDetail = value;
     }
+    
+    // Added by NFC by hand to implement {job-id}/error endpoint
+    public String getDetailMessage() {
+        return detailMessage;
+    }
 
+    public void setDetailMessage(String detailMessage) {
+        this.detailMessage = detailMessage;
+    }
 }
diff --git a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummaryFactory.java b/src/main/java/net/ivoa/xml/uws/v1/ErrorSummaryFactory.java
deleted file mode 100644
index 6851e32f1cc8a59a5785f73d19e82857e436906d..0000000000000000000000000000000000000000
--- a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummaryFactory.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package net.ivoa.xml.uws.v1;
-
-public class ErrorSummaryFactory {
-    
-    public static ErrorSummary newErrorSummary(VOSpaceFault error)
-    {
-        ErrorSummary result = new ErrorSummary();
-        result.setMessage(error.getFaultRepresentation());
-        result.setType(error.getType());
-        // Set to false since /error endpoint is not supported yet
-        result.setHasDetail(false);
-        return result;        
-    }
-    
-    // NFC: ErrorType usage is not covered in documentation, as far as I can see
-    // these are tentative default values.    
-    public enum VOSpaceFault {
-        // pushto
-        OPERATION_NOT_SUPPORTED("OperationNotSupported", ErrorType.FATAL),
-        INTERNAL_FAULT("InternalFault", ErrorType.TRANSIENT),
-        PERMISSION_DENIED("PermissionDenied", ErrorType.FATAL),
-        VIEW_NOT_SUPPORTED("ViewNotSupported", ErrorType.FATAL),
-        PROTOCOL_NOT_SUPPORTED("ProtocolNotSupported", ErrorType.FATAL),
-        INVALID_ARGUMENT("InvalidArgument", ErrorType.FATAL),
-        NODE_BUSY("NodeBusy", ErrorType.TRANSIENT),
-        // additional for pullto
-        INVALID_URI("InvalidURI", ErrorType.FATAL),
-        INVALID_DATA("InvalidData", ErrorType.FATAL),
-        // additional for pullfrom
-        NODE_NOT_FOUND("NodeNotFound", ErrorType.FATAL),
-        // additional for pushfrom
-        TRANSFER_FAILED("TransferFailed", ErrorType.FATAL),
-        // additional for movenode/copynode
-        DUPLICATE_NODE("DuplicateNode", ErrorType.FATAL);
-        
-
-        private final String faultRepresentation;
-        private final ErrorType type;
-        
-        private VOSpaceFault(String faultRepresentation, ErrorType type)
-        {
-            this.faultRepresentation = faultRepresentation;
-            this.type = type;
-        }
-        
-        public String getFaultRepresentation()
-        {
-            return this.faultRepresentation;
-        }
-        
-        public ErrorType getType()
-        {
-            return this.type;
-        }
-               
-    }
-        
-}