11-14-2019 12:43 AM
Hi,
I am trying to get customer Details from Netsuite using Netsuite Get snap, but the snap is routing documents to both Error and output views, is there any issue with the snap or Am I doing anything wrong, Previously it used to work correctly, started facing this issue from today.
Input to Netsuite Get :
Error View:
output View:
11-12-2020 08:26 AM
Hi Sharique,
Can you please clarify what your question is? In what sense does it not work during validation? Are you having trouble viewing the preview output?
11-12-2020 08:44 AM
Hi Taylor,
The issue is exactly the same as described by abhinav. When I do the pipeline validation it results in error (same error as abhinav’s). However, there is no error when I execute the pipeline. Based on my analysis, it is because Snaplogic is unable to read this response data from NetSuite and provide it in the output view(not even in raw) due to special character. Portion of XML response from NetSuite is supplied in my previous comment.
11-12-2020 09:49 AM
Can you please capture the full stack trace from the error view and paste it in a code block here?
11-12-2020 10:47 AM
[
{
"error": "An error occurred while executing the SOAP request",
"stacktrace": "com.snaplogic.data.doc.SnapDocStreamException: Exception while writing document to the underlying stream.\n\tat com.snaplogic.document.parser.DocumentStreamWriter.write(DocumentStreamWriter.java:58)\n\tat com.snaplogic.cc.snap.view.document.DocumentPreviewGenerator.openNewFileAndWrite(DocumentPreviewGenerator.java:122)\n\tat com.snaplogic.cc.snap.view.document.DocumentPreviewGenerator.writeToStorage(DocumentPreviewGenerator.java:100)\n\tat com.snaplogic.cc.snap.view.document.DocumentPreviewGenerator.writePreview(DocumentPreviewGenerator.java:61)\n\tat com.snaplogic.cc.snap.view.document.DocumentOutputViewImpl.lambda$write$0(DocumentOutputViewImpl.java:176)\n\tat com.snaplogic.cc.snap.common.ViewImpl.timeCall(ViewImpl.java:658)\n\tat com.snaplogic.cc.snap.view.document.DocumentOutputViewImpl.write(DocumentOutputViewImpl.java:162)\n\tat com.snaplogic.snap.api.OutBoundViewsImpl.write(OutBoundViewsImpl.java:221)\n\tat com.snaplogic.snaps.netsuite.NetSuiteCommon$3.call(NetSuiteCommon.java:490)\n\tat com.snaplogic.snaps.netsuite.NetSuiteCommon$3.call(NetSuiteCommon.java:431)\n\tat com.snaplogic.snaps.netsuite.NetSuiteCommon.doWithRetry(NetSuiteCommon.java:562)\n\tat com.snaplogic.snaps.netsuite.NetSuiteCommon.postRequest(NetSuiteCommon.java:431)\n\tat com.snaplogic.snaps.netsuite.NetSuiteCommon.makeRequestWithDocument(NetSuiteCommon.java:403)\n\tat com.snaplogic.snaps.netsuite.NetSuiteCommon.process(NetSuiteCommon.java:398)\n\tat com.snaplogic.snap.api.ExecutionUtil.process(ExecutionUtil.java:106)\n\tat com.snaplogic.snap.api.ExecutionUtil.executeForDocument(ExecutionUtil.java:118)\n\tat com.snaplogic.snap.api.ExecutionUtil.execute(ExecutionUtil.java:81)\n\tat com.snaplogic.snap.api.SimpleSnap.execute(SimpleSnap.java:70)\n\tat com.snaplogic.snaps.netsuite.NetSuiteCommon.executeForSuggest(NetSuiteCommon.java:321)\n\tat com.snaplogic.cc.snap.common.SnapRunnableImpl.executeSnap(SnapRunnableImpl.java:765)\n\tat com.snaplogic.cc.snap.common.SnapRunnableImpl.executeForSuggest(SnapRunnableImpl.java:614)\n\tat com.snaplogic.cc.snap.common.SnapRunnableImpl.doRun(SnapRunnableImpl.java:823)\n\tat com.snaplogic.cc.snap.common.SnapRunnableImpl.call(SnapRunnableImpl.java:402)\n\tat com.snaplogic.cc.snap.common.SnapRunnableImpl.call(SnapRunnableImpl.java:116)\n\tat java.base/java.util.concurrent.FutureTask.run(Unknown Source)\n\tat java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)\n\tat java.base/java.util.concurrent.FutureTask.run(Unknown Source)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)\n\tat java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)\n\tat java.base/java.lang.Thread.run(Unknown Source)\nCaused by: com.fasterxml.jackson.core.JsonGenerationException: Null key for a Map not allowed in JSON (use a converting NullKeySerializer?)\n\tat com.fasterxml.jackson.databind.ser.impl.FailingSerializer.serialize(FailingSerializer.java:35)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeTypedFields(MapSerializer.java:801)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:524)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:503)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:29)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeTypedFields(MapSerializer.java:803)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:524)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:503)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:29)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeTypedFields(MapSerializer.java:803)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:524)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:503)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:29)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeTypedFields(MapSerializer.java:803)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:524)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:503)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:29)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeTypedFields(MapSerializer.java:803)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:524)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:503)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:29)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeTypedFields(MapSerializer.java:803)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:524)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:503)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeWithType(MapSerializer.java:29)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeTypedFields(MapSerializer.java:803)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serializeFields(MapSerializer.java:524)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:469)\n\tat com.fasterxml.jackson.databind.ser.std.MapSerializer.serialize(MapSerializer.java:29)\n\tat com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:130)\n\tat com.fasterxml.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:3559)\n\tat com.fasterxml.jackson.databind.ObjectMapper.writeValue(ObjectMapper.java:2893)\n\tat com.snaplogic.document.parser.DocumentStreamWriter.write(DocumentStreamWriter.java:52)\n\t... 29 more\n",
"reason": "Exception while writing document to the underlying stream.",
"resolution": "Please verify that the incoming data is valid and sufficient for the request",
"status_code": "error",
"snap_details": {
"label": "Get Customer",
"instance_id": "001c9e90-XXX-42c9-XXX-XXX",
"class_id": "com-snaplogic-snaps-netsuite-lookup",
"build_tag": "main6403",
"views": {
"in": {
"input0": {
"count": 2
}
},
"out": {
"output0": {
"count": 1
}
},
"error": {
"error0": {
"count": 0
}
}
}
},
"original": {
"baseRef": {
"externalId": "XX-XXX",
"type": "customer"
}
}
}
]
11-24-2020 02:58 AM
Hi Taylor,
Did you get a chance to review the error?