Skip to main content

         This documentation site is for previous versions. Visit our new documentation site for current releases.      

Calling web services using queued execution

Updated on April 6, 2022

To preserve business data integrity across multiple Pega Platform instances, you can send messages asynchronously from one system to another. If the receiving system is unable to receive the message, you can queue the message until it can be resent later.

Before you begin:
  • Create a SOAP connector. For more information, see Creating a Connect SOAP rule.
  • Select a queue. You can either use the default queue (System-Queue-ExecutionRequest-Connect-Default) or create a queue by defining a new concrete class within the System-Queue-ExecutionRequest-Connect- class.
  • Create a connect request processor. The connect request processor defines the queue location and dequeuing options for the queued connection. For more information, see Connect Request Processor data instances.
While a process is running, invoked web services cannot return a message. Instead, the SOAP Connector Invoke activity maps the outbound data to the list of Java objects that are saved as a parameter on the parameter page. The connect activity calls the RequestProcessor queueConnectRequest method instead of calling the SOAP service. This method creates a queue item instance in the PegaRULES database, saves the primary page, parameter page, and dequeuing options to it, and sets the status to “scheduled” for an agent to resend the message.

To enable web service queuing, you must complete the following steps:

  1. Open the SOAP connector rule to specify that the request must be queued instead of processed immediately.
    1. In the navigation pane of Dev Studio, click Records.
    2. Expand the Integration-Connectors category, and then click Connect SOAP.
    3. Click the SOAP connector rule that you want to open.
  2. On the Service tab of the SOAP connector, in the Processing options section, in the Intended for field, select queuing (response will not be available).
  3. In the Request processor field, enter the request processor that you created to define the queue location and dequeuing options.
  4. Open the connect activity.
  5. On the Steps page, expand the step that runs the web service.
  6. In the Method Parameters section, in the ExecutionMode field, select Queue.
  7. Add a Commit step in one of the following ways:
    • After the web service invocation step in this activity
    • In the parent activity that calls the connect activity
    Queuing a connection request is a database operation. Even if the activity does not contain any explicit database operations, you cannot save the queue to the database without a Commit step. For more information, see Configuring steps in an activity.
What to do next: You can test the web service process to ensure that all the connections work correctly.
  1. Run the process that invokes the web service.
  2. View the instances of the queue class that you specified in the connect request processor. The Instances dialog box shows the instance and its status.
    Note: If you do not configure your connect request processor to keep items in the queue after successful completion, queue instances with a success status are not displayed.
  • Previous topic Secure the transport layer in integrations
  • Next topic XSD type and element substitution for SOAP connectors

Have a question? Get answers now.

Visit the Support Center to ask questions, engage in discussions, share ideas, and help others.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best. is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us