Connect-HTTP method

Use the Connect-HTTP method to start an HTTP request/response interaction between the Pega Platform and the external system identified by a Connect HTTP rule ( Rule-Connect-HTTP rule type).

Parameters

This method operates on a named clipboard page that is the source and destination of data mappings. Make sure the Step Page specified in the activity step that calls this method is set to the appropriate page name.

This method has one required and two optional parameters:

Parameter Description
ServiceName Required. Enter the Service Name — second key part — of the Connect HTTP rule you want to invoke. The system uses the class of the step page as the first key part.
Execution Mode Select to indicate the timing of execution
  • Run — Execute the connector synchronously; the next step of the activity containing the Connect-HTTP method does not execute until the connector response is received. (This is the default.)
  • Run in Parallel — This connector is to run in parallel as a child requestor of the current requestor. If selected, use the Connect-Wait method later in the current or a follow-on activity to access results from the connector. By default, an invoked connector retains control of the requestor session until it returns a response. Select this parameter if you want the connector to return control of the session directly after completing the request without waiting for a response. If a subsequent connector in the flow has a shape to accomplish, that connector can send its request before the first connector returns a response.
  • Queue — Add this connector request to a queue, defined by a Connect Request Processor data instance, for background processing by the Pega-IntSvcs ProcessConnectQueue agent. This mode works only if the Request Processor field on the Service tab of the HTTP Service rule identifies a Data-Admin-RequestProcessor-Connect data instance. When the agent executes a queued connector request, the execution is performed with the authorization profile of the original requestor.
EndPointURL Optional. Specify the URL of an external system to which you want to connect. A value specified for this parameter overrides the value set in the End Point URL field on the Service tab of the Connect HTTP rule.

Results

The Connect-HTTP method works as follows:

  1. Using rule resolution, locates the Connect HTTP rule identified by the ServiceName parameter and the class of the step page or primary page.
  2. Uses request information to assemble a HTTP request message for the Web service.
  3. If the step page does not exist, creates a new page, of the class identified in the Pages & Classes tab.
  4. Checks whether simulation is in force for this rule. If true, results depend on the Execution mode value:
  • Run — Executes the simulation activity synchronously
  • Run In Parallel — Executes the simulation activity in a separate requestor
  • Queue — Queues the simulation activity
  1. If simulation is not in force, calls the Web service, or queues the request, depending on the Execution mode value:
    • Run — Calls the Web service and waits for a response.
    • Run In Parallel — Executes in a separate requestor. (This temporary requestor has the same access group and clipboard as the original. At most 10 such child requestor sessions can be active at once.)
    • Queue — Creates a queue item based on the class and other characteristics identified in the Connect Request Processor, for later background processing by the Pega-IntSvcs agent.
  2. Processes the HTTP response message when it is received. (No response is available for queued connector requests.)

Checking the method status

This method updates the pxMethodStatus property. See How to test method results using a transition.

CAUTION:
Design the activity to detect and handle exceptions. If the Connect-HTTP method with the RunInParallel check box selected fails in a way that causes the Connect-Wait method to be skipped, the child requestor can fail. If the limit of parallel requestors is then eventually reached, the parent requestor will fail as well. By default, the limit is 10 requestors in parallel; you can establish a higher or lower value in the prconfig.xml file or Dynamic System Settings using the services/maxRequestorChildren setting.

Methods and instructions by function