From 2d2ff90688605f567cea1d1ebe83f93c41a43a6f Mon Sep 17 00:00:00 2001 From: Patrick Schmitz Date: Tue, 15 Nov 2011 00:24:32 +0000 Subject: [PATCH] CSPACE-4030 - preclude gratuitous NPE errors when processing payloads with extra parts (e.g., after updating Person with links to other persons). --- .../client/java/RemoteDocumentModelHandlerImpl.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RemoteDocumentModelHandlerImpl.java b/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RemoteDocumentModelHandlerImpl.java index 5e6f05251..5c365d056 100644 --- a/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RemoteDocumentModelHandlerImpl.java +++ b/services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RemoteDocumentModelHandlerImpl.java @@ -111,12 +111,16 @@ public abstract class RemoteDocumentModelHandlerImpl String partLabel = part.getLabel(); try{ ObjectPartType partMeta = partsMetaMap.get(partLabel); - // extractPart(docModel, partLabel, partMeta); - Map unQObjectProperties = extractPart(docModel, partLabel, partMeta); - addOutputPart(unQObjectProperties, partLabel, partMeta); + // CSPACE-4030 - generates NPE if the part is missing. + if(partMeta!=null) { + Map unQObjectProperties = extractPart(docModel, partLabel, partMeta); + if(unQObjectProperties!=null) { + addOutputPart(unQObjectProperties, partLabel, partMeta); + } + } } catch (Throwable t){ - System.out.println("===============================\r\nUnable to addOutputPart: "+partLabel + logger.error("Unable to addOutputPart: "+partLabel +" in serviceContextPath: "+this.getServiceContextPath() +" with URI: "+this.getServiceContext().getUriInfo().getPath() +" error: "+t); -- 2.47.3