In the salesdemo, when we browse through canto, we see errors in studio, with this stacktrace in the studio logs:
2018-09-14 12:43:18 [WARN] com.coremedia.blueprint.connectors.canto.rest.CantoConnector [] - REST call to 'https://sandbox.canto.com/CIP/metadata/getcategories/coremedia-poc/categories?categoryid=140' failed. Exception:
{"status":500,"message":"Record not found (src/CategoryItemCollection.cpp:513, module:CantoLib, error:8008, nativeError:0)","error":"item.not.found","exception":{"errormessage":"Record not found (src/CategoryItemCollection.cpp:513, module:CantoLib, error:8008, nativeError:0)","stacktrace":["com.canto.cip.dam.cumulus.CumulusDamCatalog.getCategories(CumulusDamCatalog.java:866)","com.canto.cip.operations.MetadataGetCategoriesOperation.execute(MetadataGetCategoriesOperation.java:206)","com.canto.cip.servlets.RESTServlet.doRequest(RESTServlet.java:529)","com.canto.cip.servlets.RESTServlet.doGet(RESTServlet.java:239)","javax.servlet.http.HttpServlet.service(HttpServlet.java:649)","javax.servlet.http.HttpServlet.service(HttpServlet.java:742)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)","org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)","com.canto.cip.filters.HttpHeaderValueFilter.doFilter(HttpHeaderValueFilter.java:54)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)","org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)","org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)","org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)","org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)","org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)","org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)","org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)","org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)","org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)","org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)","org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1693)","org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)","org.apache.tomcat.util.net.AbstractEndpoint.processSocket(AbstractEndpoint.java:1046)","org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$4.completed(Nio2Endpoint.java:626)","org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$4.completed(Nio2Endpoint.java:604)","org.apache.tomcat.util.net.SecureNio2Channel$1.completed(SecureNio2Channel.java:907)","org.apache.tomcat.util.net.SecureNio2Channel$1.completed(SecureNio2Channel.java:840)","sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:126)","sun.nio.ch.Invoker$2.run(Invoker.java:218)","sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112)","java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)","java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)","org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)","java.lang.Thread.run(Thread.java:745)"],"cause":{"errormessage":"Record not found","stacktrace":["com.canto.cumulus.CategoryItemCollection.getCategoryItemByID1(Native Method)","com.canto.cumulus.CategoryItemCollection.getCategoryItemByID(CategoryItemCollection.java:68)","com.canto.cip.dam.cumulus.CumulusDamCatalog.mergeIntoToCategoryTree(CumulusDamCatalog.java:888)","com.canto.cip.dam.cumulus.CumulusDamCatalog.getCategories(CumulusDamCatalog.java:853)","com.canto.cip.operations.MetadataGetCategoriesOperation.execute(MetadataGetCategoriesOperation.java:206)","com.canto.cip.servlets.RESTServlet.doRequest(RESTServlet.java:529)","com.canto.cip.servlets.RESTServlet.doGet(RESTServlet.java:239)","javax.servlet.http.HttpServlet.service(HttpServlet.java:649)","javax.servlet.http.HttpServlet.service(HttpServlet.java:742)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)","org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)","com.canto.cip.filters.HttpHeaderValueFilter.doFilter(HttpHeaderValueFilter.java:54)","org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)","org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)","org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)","org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)","org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)","org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)","org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650)","org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)","org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342)","org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803)","org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)","org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:790)","org.apache.tomcat.util.net.Nio2Endpoint$SocketProcessor.doRun(Nio2Endpoint.java:1693)","org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)","org.apache.tomcat.util.net.AbstractEndpoint.processSocket(AbstractEndpoint.java:1046)","org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$4.completed(Nio2Endpoint.java:626)","org.apache.tomcat.util.net.Nio2Endpoint$Nio2SocketWrapper$4.completed(Nio2Endpoint.java:604)","org.apache.tomcat.util.net.SecureNio2Channel$1.completed(SecureNio2Channel.java:907)","org.apache.tomcat.util.net.SecureNio2Channel$1.completed(SecureNio2Channel.java:840)","sun.nio.ch.Invoker.invokeUnchecked(Invoker.java:126)","sun.nio.ch.Invoker$2.run(Invoker.java:218)","sun.nio.ch.AsynchronousChannelGroupImpl$1.run(AsynchronousChannelGroupImpl.java:112)","java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)","java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)","org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)","java.lang.Thread.run(Thread.java:745)"],"details":{"error":8008,"file":"src/CategoryItemCollection.cpp","line":513,"module":"CantoLib"}}},"version":{"cip":{"name":"Canto Integration Platform","version":"11.1"}}} (catalina-exec-1)
2018-09-14 12:43:20 [ERROR] com.coremedia.rest.exception.CatchAllExceptionMapper [] - A server error occurred: null (catalina-exec-19)
java.lang.NullPointerException: null
at com.coremedia.blueprint.connectors.canto.model.CantoCategory.getName(CantoCategory.java:103)
at com.coremedia.blueprint.connectors.canto.model.CantoCategory.getDisplayName(CantoCategory.java:115)
at com.coremedia.blueprint.studio.connectors.rest.ConnectorEntityResource.fillRepresentation(ConnectorEntityResource.java:112)
at com.coremedia.blueprint.studio.connectors.rest.ConnectorCategoryResource.getRepresentation(ConnectorCategoryResource.java:138)
at com.coremedia.blueprint.studio.connectors.rest.ConnectorCategoryResource.getRepresentation(ConnectorCategoryResource.java:49)
at com.coremedia.blueprint.studio.connectors.rest.ConnectorEntityResource.get(ConnectorEntityResource.java:86)
Apparently, the delegate object can be null in certain situation.