Error calling REST service

0
I have been receiving an error calling rest service message when testing a REST call feature on a new laptop.  I am successfully able to retrieve data using the REST call in our acceptance environment with the new laptop and it has also been working when I test it locally on my old laptop.  I am just having this problem when I test the feature locally on this new machine.  I believe this error may be related to some sort of firewall settings on this new laptop but I have not been able to get it to work.  I have been making some changes in the Windows Firewall but have not been successful.  I am using the FDA’s openFDA API to retrieve the data, if someone could offer any suggestions or point me in the right direction that would be helpful, thank you.   Here is the entire stacktrace below: An error has occurred while handling the request. [User 'mogburn' with session id 'ab7b60f9-8b11-4063-8cfa-c5bb81c088a5' and roles 'PAAHAdministrator'] -------- com.mendix.modules.microflowengine.MicroflowException: Error calling REST service at FDARecallNotifications.IVK_SearchForFDARecalls.nested.e5508e7f-7585-4fd5-b3f0-d73e92023aeb [4 of 41] (CallRest : 'Call REST (GET)') at FDARecallNotifications.IVK_SearchForFDARecalls (NestedLoopedMicroflow : '') Advanced stacktrace: at com.mendix.integration.actions.microflow.RestCallAction.execute(RestCallAction.scala:47) Caused by: com.mendix.modules.microflowengine.MicroflowException: 429: at FDARecallNotifications.IVK_SearchForFDARecalls.nested.e5508e7f-7585-4fd5-b3f0-d73e92023aeb [4 of 41] (CallRest : 'Call REST (GET)') at FDARecallNotifications.IVK_SearchForFDARecalls (NestedLoopedMicroflow : '') Advanced stacktrace: at com.mendix.integration.actions.microflow.RestCallAction.checkStatusCode(RestCallAction.scala:68) at com.mendix.integration.actions.microflow.RestCallAction.com$mendix$integration$actions$microflow$RestCallAction$$handleResponse(RestCallAction.scala:60) at com.mendix.integration.actions.microflow.RestCallAction$$anonfun$execute$1$$anonfun$apply$1.apply(RestCallAction.scala:42) at com.mendix.integration.actions.microflow.RestCallAction$$anonfun$execute$1$$anonfun$apply$1.apply(RestCallAction.scala:41) at com.mendix.integration.util.InputStreamUtil$.using(InputStreamUtil.scala:36) at com.mendix.integration.actions.microflow.RestCallAction$$anonfun$execute$1.apply(RestCallAction.scala:41) at com.mendix.integration.actions.microflow.RestCallAction$$anonfun$execute$1.apply(RestCallAction.scala:40) at com.mendix.integration.util.InputStreamUtil$.using(InputStreamUtil.scala:36) at com.mendix.integration.actions.microflow.RestCallAction.execute(RestCallAction.scala:40) at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:47) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:192) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:149) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:49) at com.mendix.core.actionmanagement.CoreAction.doCall(CoreAction.java:260) at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:248) at com.mendix.core.actionmanagement.ActionManager$1.execute(ActionManager.java:168) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:36) at com.mendix.core.actionmanagement.ActionManager.executeSync(ActionManager.java:172) at com.mendix.core.component.InternalCore.executeSync(InternalCore.java:496) at com.mendix.modules.microflowengine.actions.other.NestedLoopedMicroflowAction$$anonfun$executeLoop$2.apply(NestedLoopMicroflowAction.scala:67) at com.mendix.modules.microflowengine.actions.other.NestedLoopedMicroflowAction$$anonfun$executeLoop$2.apply(NestedLoopMicroflowAction.scala:58) at scala.collection.TraversableLike$WithFilter$$anonfun$foreach$1.apply(TraversableLike.scala:778) at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59) at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48) at scala.collection.TraversableLike$WithFilter.foreach(TraversableLike.scala:777) at com.mendix.modules.microflowengine.actions.other.NestedLoopedMicroflowAction.executeLoop(NestedLoopMicroflowAction.scala:58) at com.mendix.modules.microflowengine.actions.other.NestedLoopedMicroflowAction.execute(NestedLoopMicroflowAction.scala:41) at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:47) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:192) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:149) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:49) at com.mendix.core.actionmanagement.CoreAction.doCall(CoreAction.java:260) at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:248) at com.mendix.core.actionmanagement.ActionManager$1.execute(ActionManager.java:168) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:36) at com.mendix.core.actionmanagement.ActionManager.executeSync(ActionManager.java:172) at com.mendix.core.component.InternalCore.execute(InternalCore.java:414) at com.mendix.webui.actions.client.ExecuteAction.execute(ExecuteAction.java:144) at com.mendix.webui.requesthandling.ClientRequestHandler$$anonfun$handleRequest$1.apply$mcV$sp(ClientRequestHandler.scala:312) at com.mendix.webui.requesthandling.ClientRequestHandler$$anonfun$handleRequest$1.apply(ClientRequestHandler.scala:302) at com.mendix.webui.requesthandling.ClientRequestHandler$$anonfun$handleRequest$1.apply(ClientRequestHandler.scala:302) at com.mendix.core.session.Worker$$anonfun$receive$3$$anonfun$2$$anon$1.execute(ActionDispatching.scala:143) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:36) at com.mendix.core.session.Worker$$anonfun$receive$3$$anonfun$2.apply(ActionDispatching.scala:145) at scala.util.Try$.apply(Try.scala:192) at com.mendix.core.session.Worker$$anonfun$receive$3.applyOrElse(ActionDispatching.scala:139) at akka.actor.Actor$class.aroundReceive(Actor.scala:465) at com.mendix.core.session.Worker.aroundReceive(ActionDispatching.scala:135) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516) at akka.actor.ActorCell.invoke(ActorCell.scala:487) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238) at akka.dispatch.Mailbox.run(Mailbox.scala:220) at akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:393) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)  
asked
1 answers
3

I figured out that the HTTP status code 429 indicates that the user has sent too many requests in a given amount of time ("rate limiting").  After examining my http header response, I found out I was exceeding my X-RateLimit-Limit, and sending too many requests per second.  I placed a delay using the delay Java action in Community Commons between the REST requests and it fixed the issue.   

answered