I recently attended the IFS Academy training course called “RESTful API Integration Development - IFS Applications 10” which explains how use IFS Connect to build IFS Apps 10 interfaces using restful APIs. I’ve have been trying to apply what I learned but cant get it to work :-(
I’m calling a rest API of another platform to obtain some XML data, and then use a callback function to create some records in IFS based on the returned XML data. The Rest API call is working, and is returning the expected XML, but there’s an issue with my Callback function. Here’s what I’ve done so far...
I used postman to confirm the URL and parameters needed for the external Rest API.
In IFS Connect, I created a Routing Address pointing to that external Rest API, and created a 2nd routing address of type “PL/SQL” which calls “plsql_Rest_Sender_API.Rest_Common_Callback”.
I also created an outbound routing rule which links these two routing addresses.
I crated a PL/SQL method named “Get_XML_Data” which calls the routing address via "Plsql_Rest_Sender_API.Call_Rest_Endpoint2”, and uses the “Callback_Func_” argument to trigger a 2nd PL/SQL method named “Process_XML_Data”.
If I call the “Get_XML_Data” method, the EE Application Messages page shows that the XML was returned correctly from the external platform, and was correctly passed to “Plsql_Rest_Sender_API.Rest_Common_Callback”. So it seems the Rest API call is working, and I’m getting the expected XML response. However, my “Process_XML_Data” method doesn't seem to work correctly, and I’m struggling to debug it.
I found that if I call my Process_XML_Data method with some example XML, then it works fine, but when it’s triggered from the call_back function, it doesn't seem to do anything at all?
My real challenge is that I don't know where to look to see any error messages that might be coming from my “Process_XML_Data” method. The application Messages page doesn't seem to show any useful info, and there's nothing to see on the background job page. I’m also not sure how I can output debug info from that process. If used dbms_output.put_line(‘xxx’) within my code, i don't know where to look to see those outputs?
Can any of you cleaver IFS Experts help me with this one?
- Robin