05-07-2021 09:05 AM
I am developing a custom SNAP that makes HTTP request and gets JSON response in return. The response is array of objects. In order to right it to document , currently it only shows up if I convert the response to string in following manner:
Map<String, Object> data = new LinkedHashMap<>();
data.put(“Response”, response);
outputViews.write(documentUtility.newDocumentFor(document, data));
But I’d like to instead preview the response in standard json format in outputview. Any idea how this can be achieved ? Any help would be appreciated . Thank you!
Solved! Go to Solution.
05-11-2021 09:45 AM
Yes, you’ll want to use the Jackson library’s ObjectMapper class for that.
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.type.TypeReference;
...
private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper();
private static final TypeReference<Object> TYPE_REF = new TypeReference<Object>() {};
...
Object parsedResponse = OBJECT_MAPPER.readValue(response, TYPE_REF);
Note there are other versions of the readValue method that take a Reader or InputStream, which means you might be able to avoid reading the entire response as a String.
Hope that helps.
08-25-2021 01:38 PM
@mbowen Thank you for pointing to that directions- clicking on snap gives following console error:
08-25-2021 01:49 PM
I have never seen this error before. Any idea what am I missing ?
Any help would be appreciated.
08-25-2021 01:35 PM
@ptaylor I made some functional changes without changing anything in pom file.
No updates are done to version metadata. I also tried to include
SingleDocGenerator inside my custom snappack to see of the problem exists with the snaps or snappack and I could not get UI show up for SingleDocGenerator too.
Deployed the new snappack by uploading zip file from Manager UI
08-25-2021 02:00 PM
I am seeing following error in console.
08-25-2021 02:20 PM
You uploaded the snap pack zip file to your organization’s root shared
project?
Can you please find that snap pack in the Manager and click on the snap pack name? What do you see?