URL Encoding

According to HTTP specifications, unsafe characters included in transmitted data with the MIME type application/x-www-form-urlencoded must be encoded (escaped). This is achieved by replacing unsafe characters with hexadecimal equivalents and preceding them with percent (%) symbols.

Silk Performer provides four standard encoding types: ENCODE_FORM, ENCODE_ESCAPE, ENCODE_BLANKS and ENCODE_NONE. These encoding types differ in terms of the characters they escape.

Siebel Web client Java applets apply a unique encoding type that differs from the standard Silk Performer encoding types. For this reason, Silk Performer provides a new encoding type, ENCODE_CUSTOM, which can be configured using the function WebFormDefineEncodeCustom.

Siebel uses an encoding type that differs from the standard encoding type ENCODE_FORM in the following respects:

The Silk Performer Web Recorder detects when an HTTP request applies this special encoding type, and then generates a script using the following techniques:

Fragments of a Recorded Script that utilizes ENCODE_CUSTOM

This example shows fragments of a recorded script that utilizes these techniques.

dcltrans
  transaction TInit
  begin
    WebSetBrowser(WEB_BROWSER_MSIE55);
    WebFormDefineEncodeCustom("base=ENCODE_FORM;"
                              " +'@'; -'!()$,'");
  end TInit;

// ...

dclform
  SALES_START_SWE011 <ENCODE_CUSTOM> :
    "SWERPC"                    := "1",
    "SWECount"                  := "4",
    "SWECmd"                    := "InvokeMethod",
    "SWEMethod"                 := "GetPreference",
    "SWEInputPropSet"           := "@0`0`3`0`GetPreference`3``pCategory`"
                                   "Behavior`pPrefName``SWEJSXInfo`false`";