Hello SMP developers,
We recently upgraded SMP server runtime to SP10 PL01 and encountered with an issue where BATCH calls with PUT requests fail during FLUSH operation (from offline store).
Looking into server logs we found below error message:
java.lang.NullPointerException: while trying to invoke the method java.lang.Boolean.booleanValue() of a null object returned from com.sap.odata.offline.api.MODataConfigEndpointInfo.getContentIDInOpHeaders() |
at com.sap.odata.offline.requestqueue.BatchBuilder.<init>(BatchBuilder.java:49) |
at com.sap.odata.offline.requestqueue.RequestQueueProcessor.processRequests(RequestQueueProcessor.java:127) |
at com.sap.odata.offline.scripts.ODataRequestQueueHandler.doHandleDownloadData(ODataRequestQueueHandler.java:217) |
at com.sap.odata.offline.scripts.ODataRequestQueueHandler$2.call(ODataRequestQueueHandler.java:185) |
at com.sap.mobile.platform.server.mobilink.MODataServiceSupport.executeWithContext(MODataServiceSupport.java:103) |
at com.sap.odata.offline.util.MODataServiceImpl.executeWithContext(MODataServiceImpl.java:87) |
at com.sap.odata.offline.scripts.ODataRequestQueueHandler.handle_DownloadData(ODataRequestQueueHandler.java:190) |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) |
at java.lang.reflect.Method.invoke(Method.java:497) |
at ianywhere.ml.script.MethodInfo.invoke(MethodInfo.java:12222) |
#ERROR#com.sap.odata.offline.util.NativeLogger###Thread-85####7fc330a0-c6ca-11e5-8000-cb3e31843b22#####<134> [-10118] Caught Java exception with type: java.lang.NullPointerException. |
#+00#ERROR#com.sap.odata.offline.util.NativeLogger###Thread-85####7fc330a0-c6ca-11e5-8000-cb3e31843b22#####<134> [-10118] Exception message: while trying to invoke the method java.lang.Boolean.booleanValue() of a null object returned from com.sap.odata.offline.api.MODataConfigEndpointInfo.getContentIDInOpHeaders() |
+00#ERROR#com.sap.odata.offline.util.NativeLogger###Thread-85####7fc330a0-c6ca-11e5-8000-cb3e31843b22#####<134> [-10225] User exception: while trying to invoke the method java.lang.Boolean.booleanValue() of a null object returned from com.sap.odata.offline.api.MODataConfigEndpointInfo.getContentIDInOpHeaders(): java.lang.NullPointerException |
After contacting SAP support, we came to know that there seems to be a bug in the Offline server component and it will be fixed in next SMP server patch releases.
Workaround: Add following property in .ini file under [endpoint] section
content_id_header_location=mime
Hope this information helps others. #HappyLearning
Regards,
JK