cancel
Showing results forย 
Search instead forย 
Did you mean:ย 

Custom EDI Parser snap output view not recognised by mapper snap

Ksivagurunathan
Contributor

EDI_CUSTOM_SNAPwe developed a custom snap to parse EDI 835 data on Java. puzzle is how to map Java object on mapper snap. when we add a mapper snap next to EDI parser, Input schema on mapper is blank. But when I add a copy snap in between EDI Parser custom snap and mapper, am able to see the input schema in mapper.

5 REPLIES 5

dmiller
Admin Admin
Admin

Did you ever figure out the issue?
Bumping up if not since there were no comments yet.


Diane Miller
Community Manager

robin
Former Employee

I helped out on this one. Yes, I believe the root cause was successfully identified.

A custom object was being used directly as the Document data and hence this behavior was experienced.

To ensure compatibility, an instance of SnapLogicโ€™s Jackson ObjectMapper can be injected and then used to create a JSON-compatible version of your custom object:

@Inject
private ObjectMapper mapper;

Instead of:

outputViews.write(documentUtility.newDocument(edi835Message));

do this:

outputViews.write(documentUtility.newDocument(mapper.convertValue(edi835Messsage, Map.class));

This ensures that the Document written to the output view contains a Map, which the Mapper will then be able to introspect and display in its input schema.

ryagnik
New Contributor

Thank you for helping us outโ€ฆ

Thanks @dmiller and @robin for this! I was having a similar issue with some of my custom snaps.

@robin what do you import at the top? Right now Iโ€™m importing from: org.codehaus.jackson.map.ObjectMapper

Thanks!
Andrew