|
Thursday, September 20, 2018 |
Tuesday, October 23, 2018 6:44:41 PM |
7 [0.04% of all post / 0.00 posts per day] |
|
Hi,
We have a 3rd party provider that would call Mapforce mapping exposed as Flowforce web service. The provider is posting JSON data to the service as HTTP POST. I could configure Flowforce service to work when posting JSON data as a form data or URL parameter.
Is there a way to configure the mapping or Flowforce service to process data posted to the service without input parameters?
|
I ran into a similar issue when posting JSON data to the mapping exposed as the web service. Click Insert tab, then Insert input as string -- map this to CXML/XML as 'Parse Strings to XML', hope this will work for your scenario.
See Island's screenshot here, in case it's not clear from above.
https://www.altova.com/forum/default.aspx?g=posts&t=1100004556
You need to change the mapping and re-deploy the service as well to use new input.
|
island wrote:Hi,
right click on "File/String" in the JSON component and select "Parse Strings to JSON". Next insert an Input (FUNCTION | Insert Input) and connect this to "String:". Then redeploy your mapping to Flowforce.
Is it possible to configure Flowforce job to process data submitted in HTTP POST, without an input String configuration? The 3rd party service is sending JSON data in HTTP POST to the exposed service, having issues since the mapping/job expects a parameter name.
|
I would like to post my experience on this topic since I had to struggle for few days to get it working the way it's supposed. I did get some help from Altova support.
We need Mapforce tool, Mapforce server, and Flowforce server software, to be able to expose Mapforce mapping as a job and/or web service.
1. We need to use an extra input to send data to Flowforce Web service using HTTP POST as described in below discussion(thanks to Island).
https://www.altova.com/forum/default.aspx?g=postmessage&t=1100004556&f=38
2. Configure job "Permissions" to use anonymous user, to make a Web service available without credentials, grant the Use Service permission to the default useranonymous user (see also How Permissions Work section).
3. Configure the job and step to use an input parameter, to which we would post JSON data as input 4. Use either query string parameter or tool kike Postman, to submit JSON data to the service URL. 5. The service URL would look like http://localhost:4646/service/jsontocsvws and with the parameter http://localhost:4646/service/jsontocsvws?httppostinput={ "Id": 51, "Dept": "IT" }
Next steps are network set up, tune security for the job/service and return response back to the caller from the mapping.
|
Island,
Thank you very much. I can now call the service by posting JSON data. It took some time to understand the credentials part, because by default it would ask for user id/pwd. Much better response than the production support updates.
|
Hi,
I created a simple mapping to convert JSON data to a csv file, similar to the one mentioned below.
https://manual.altova.com/mapforce/mapforceenterprise/index.html?mff_json_mapping_example1.htm
The web service set up is done but appears to be working with default or hard coded JSON file that was used during mapping creation. How do we pass JSON data as String or other format when calling the web service from a browser?
The service URL will look like http://localhost:4646/service/jsontocsvws
and sample JSON data I am trying to post to above URL: { "name": "John3332", "age": 431, "city": "New Yorker" }
Thanks
|
Hi,
I am new Mapforce and just started going over the tool and documentation. We have a requirement where an external provider would post either JSON or XML data to a publicly exposed URL/endpoint, I believe the endpoint in this context would be a Mapforce mapping running in FlowForce server and exposed as Web Service. We then transform the data to another format, and send to an internal system, like ERP or CRM system.
Please let me know if my understand is correct and any standards and best practices we would need to follow, to be able access Mapforce mapping URL, from an external site/provider. All this communication must be done over HTTPS.
Some useful posts I found so far.
https://manual.altova.com/flowforceserver/flowforceserver/index.html?fs_exposing_jobs_as_web_services.htm
https://www.altova.com/forum/default.aspx?g=posts&t=1100001824
https://blog.altova.com/json-data-mapping-and-transformation-with-mapforce/
Thanks
|
|