Search code examples
mulequartz-scheduler

Stopping Quartz endpoint in mule


I have a requirement in my project.

  1. I need to receive an xml file, do a json transformation, in the xml file if some field.id == 'X' then I need to call rest service for every hour, get response from service and prepare payload, send to destination A. This scheduler will continue until the 2.

  2. 2nd XML file received, Now field.id == 'Y', stop the scheduler and rest call, do a different transforation and send to destination B.

Now as per my solution, for scheduling I have used Quartz end point with flow status as stopped. And want start and stop the flow as needed. But I am facing 2 issues.

  1. When I am starting quartz and calling rest, the service works fine there is always time out exception

    Root Exception stack trace: java.util.concurrent.TimeoutException: Timeout exceeded

  2. After stopping the flow , quartz continuously throws error on every poll

    org.quartz.JobExecutionException: No receiver with key "connector.quartz.mule.default" could be found in connector "quartz://Rest-Call"

Any suggestion is appreciated. TIA


Solution

  • For making http calls, I have used poller component instead of quartz which has resolved my issues which I was getting with Quartz.