From: remillet Date: Mon, 9 Mar 2015 21:52:07 +0000 (-0700) Subject: CSPACE-6375: There seems to be a bug in Nuxeo 6 when it tries to return a property... X-Git-Url: https://git.aero2k.de/?a=commitdiff_plain;h=03debd9891f4138c884eb88364dd4de994dfcd42;p=tmp%2Fjakarta-migration.git CSPACE-6375: There seems to be a bug in Nuxeo 6 when it tries to return a property value of an item in a list of complex types when that property is not-set/empty/null. This was not a problem in Nuxeo 5.5, so we will need to investigate if this is a known problem. --- 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 39060c28d..68389c824 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 @@ -822,6 +822,10 @@ public abstract class RemoteDocumentModelHandlerImpl } catch(ClassCastException cce) { throw new RuntimeException("Problem retrieving property {"+xpath+"} as String. Not a String property?" +cce.getLocalizedMessage()); + } catch(NullPointerException npe) { + // Getting here because of a bug in Nuxeo when value in repository is unknown/empty/null + logger.warn(String.format("Nuxeo repo unexpectedly returned an Null Pointer Exception when asked for the value of {%s}.", + xpath)); } catch(Exception e) { throw new RuntimeException("Unknown problem retrieving property {"+xpath+"}." +e.getLocalizedMessage()); diff --git a/services/contact/client/src/main/java/org/collectionspace/services/client/ContactClientUtils.java b/services/contact/client/src/main/java/org/collectionspace/services/client/ContactClientUtils.java index 4ad1c158e..3d2c07c36 100644 --- a/services/contact/client/src/main/java/org/collectionspace/services/client/ContactClientUtils.java +++ b/services/contact/client/src/main/java/org/collectionspace/services/client/ContactClientUtils.java @@ -9,6 +9,8 @@ import org.collectionspace.services.contact.AddressGroupList; import org.collectionspace.services.contact.ContactsCommon; import org.collectionspace.services.contact.EmailGroup; import org.collectionspace.services.contact.EmailGroupList; +import org.collectionspace.services.contact.TelephoneNumberGroup; +import org.collectionspace.services.contact.TelephoneNumberGroupList; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -49,6 +51,14 @@ public class ContactClientUtils { contact.setInAuthority(inAuthority); contact.setInItem(inItem); + TelephoneNumberGroupList telephoneNumberGroupList = new TelephoneNumberGroupList(); + List telephoneGroups = telephoneNumberGroupList.getTelephoneNumberGroup(); + TelephoneNumberGroup telephoneNumberGroup = new TelephoneNumberGroup(); + telephoneNumberGroup.setTelephoneNumber("510-555-1212"); + telephoneNumberGroup.setTelephoneNumberType("local"); + telephoneGroups.add(telephoneNumberGroup); + //contact.setTelephoneNumberGroupList(telephoneNumberGroupList); + EmailGroupList emailGroupList = new EmailGroupList(); List emailGroups = emailGroupList.getEmailGroup(); EmailGroup emailGroup = new EmailGroup();