Show
all
Use the Response tab to specify how the
service rule constructs the response that Process Commander sends in
reply to the request. You can set up more than one response, based on
conditions. You can also specify additional HTTP response codes to send
with the response.
When no response is configured on this tab, at runtime Process
Commander returns one of the following HTTP response codes by
default:
- 200 — The request was processed without any errors.
- 500 — An error occurred during processing.
- 400 — An authentication problem occurred.
Conditions
To override any of those codes, specify a response on this tab.
Define each condition with the following three fields:
Field
|
Description
|
Condition
|
Select
one of the following conditions:
Default
|
Send this response when there are no
errors to report. If you plan to set up more than one
condition, configure the Default condition
as the last one in the list. To send an HTTP response
code other than 200, specify a different code for the
Default condition in the HTTP Response
Code field. |
When
|
The system evaluates the when condition specified
by the When Key field. If the
condition is true, the system returns the response
message data. If the condition is false, the system
evaluates the next when condition rule in the list. If
all listed when condition rules are false, it returns
the default response data. Use this feature to extend
the normal set of fatal error conditions that result in
exceptions returned to the client, such as
inappropriate inputs to the service activity or other
tests you define. |
Queue When
|
The system evaluates the when condition rule
specified by the When Key field. If
the condition evaluates to true , the
system queues the service request and returns the queue
item ID of the service request. If you
configure a Queue When condition, you must
specify a request processor in the Request
Processor field on the Service tab. For more information, see
the Pega Developer
Network article PRKB-25031 How to create a service
that queues failed service requests for another
attempt. |
Mapping Error
|
If an error occurs while mapping incoming data from
a request message to the clipboard, the service returns
the specified response message data. If the list of
response conditions does not include an entry for
mapping errors, Process Commander returns the HTTP
status code 500. |
Security Error
|
If an error occurs while authenticating the client
credentials, Process Commander returns the specified
response message data. If the list of response
conditions does not include an entry for security
errors, Process Commander returns the HTTP status code
401. |
Service Error
|
If a valid instance of the service activity cannot
be found, the system sends the specified response
message data. If the list of response conditions does
not include an entry for service errors, Process
Commander returns the HTTP status code 500. |
|
When
Name
|
Optional, but required
if the Condition value is set to
When or Queue When . Specify the
name — second key part — of a when condition rule
to evaluate for this condition. The system uses the first key
part — the Applies To class — of
the service activity as the first key part of the when
condition rule.
|
HTTP Status
Code
|
Optional. Enter an HTTP status code to return to the
external application with the response.
|
Header
fields
By default, Process Commander sets values for the HTTP headers
Server
, Cache-Control
,
Content-Type
, Content-Length
, and
Date
in the response. Additionally, if the
Processing Mode in the service package is set to
Stateful
, the system sends the Requestor ID value
automatically to the client application as a token, in a cookie with
the prefix PegaRULES
.
If the response is include a header other than the ones that are
set by default, complete the fields in this section. The data type of
a header field is String
.
Field
|
Description
|
Name
|
Enter the external name of the header field.
|
Description
|
Enter a short description of the header field.
|
Map
From
|
Specify the source or the type of source of the value in
Process Commander.
Clipboard — Map from the page name
or property on the clipboard specified by the Map
From Key field.
Constant — The data is a fixed
value.
- If additional choices appear, they identify a custom
function rule in a
MapFrom library
(Rule-Utility-Function). Review the function
rule to determine what it does.
|
Map From
Key
|
Specify
the key to locating the property or rule in the source
specified in the Map From field.
- If the Map From value is
Clipboard , enter the property name to which
the data is mapped at runtime.
- If the Map From value is a
Rule-Utility-Function from a
MapFrom library, enter or select property
that holds the value pass to the custom function at
runtime.
- If the Map To value is
Constant , enter the value of the constant,
surrounded by double quote characters.
|
Message
Data
Use the fields in this section to define the data for the response.
The data type of the message data is String
.
Field
|
Description
|
Description
|
Enter a short description of the string in the
response.
|
Map From
|
Specify
the source or the type of source of the value in Process
Commander:
Clipboard — The source is a
property or a page on the clipboard.
Constant — The source is a fixed
value that does not change.
XML Stream — The source is a stream
of XML data formatted by an XML Stream rule.
HTML Stream — The source is a
stream of HTML data formatted by an HTML rule.
HTML Frame — The source is a stream
of HTML data generated by the service activity.
If additional choices appear, they identify a custom
function rule in a MapFrom library. Review the
function rule to determine what it does.
|
Map From
Key
|
Specify
the key to locating the property or rule in the source
specified in the Map From field:
Clipboard
|
Enter the reference to the property.
If this is a Queue When mapping or
the mapping for a service that processes service
requests asynchronously, enter
Param.pxQueueItemID . For information
see Pega Developer Network articles PRKB-25031 How
to create a service that queues failed service
requests for another attempt or PRKB-25030
How to create a service that processes requests
asynchronously.
|
Constant
|
Enter a literal text string. To include blank
spaces in your text string, surround the string with
double quotes.
|
XML Stream
|
Enter either the Stream Name
(second key part) of the appropriate XML Stream rule
or a page name and stream name using the syntax
PageName.StreamName. The page must be present on the
clipboard when the service rule runs for rule
resolution to find the rule. If you specify the
stream name only, the system uses the Page
Class of this service rule (found on the
Service tab) as the
first key part of the HTML rule.
To maintain
backward compatibility for service rules created in
Process Commander releases before V5.2, you can
specify a data mapping with only a
Namespace value. In that case, the
system at runtime determines the Element
Name key part from the root element of the
incoming XML document. However, this mapping works
only if the Parser Type of the XML
parse rule is set to DOM and validation
is not enabled. As a best practice, specify both the
Namespace Name and the
Element Name of the rule.
B-21542
|
HTML Stream
|
Enter either the Stream Name
(second key part) of the appropriate HTML rule or a
page name and stream name using the syntax
PageName.StreamName. (The page must be present on
the clipboard when the service rule runs for rule
resolution to find the rule.) If you specify the
stream name only, the system uses the Page
Class of this service rule (on the
Service tab) as the
first key part of the HTML rule.
|
HTML Frame
|
Enter the name of the frame specified in the
Show-HTML step of the service activity. Use this
option to return data from activities that were
originally written for interactive browser clients
and use the Show-HTML method.
|
a Rule-Utility-Function from a
MapFrom library |
Either select the property that holds the value
to be processed by the function at runtime or leave
this field blank, as appropriate for the
function.
|
|
About Service HTTP
rules