2.5.1.1 Query String Mapping

For GET and DELETE methods, input data is passed as an HTTP query string.

Data passed as query string can be mapped within the limitations of query string representation:

  • keyword=value model, when applicable. For simple buffer types the actual data may be passed directly, e.g.: http://host:1234/myTOUPPER?inputstring
  • No nesting possibly of keyword/value pairs.
  • No nesting possibly of keyword/value pairs.
  • Encoding must be performed for some characters (space for instance).
  • Limited amount of data. While GWWS does not impose any limit, the browser or client toolkit may.

The mapping is described below for the different types of buffers supported by Oracle Tuxedo

Table 2-12 Query String Mapping

Tuxedo Buffer Type Query String Mapping Notes
STRING http://host:port/service?data Data as is, possibly URL encoded, GWWS performs the decoding.
CARRAY http://host:port/service?data Data represented as base64 encoded string.
MBSTRING http://host:port/service?data Data represented as URL encoded of UTF-8 representation of the Oracle Tuxedo MBSTRING.
XML http://host:port/service?data XML fragment as is, URL encoded.
X_C_TYPE Same as VIEW/VIEW32 -
X_COMMON Same as VIEW/VIEW32 -
X_OCTET Same as CARRAY -
VIEW/VIEW32 http://host:port/service?value1&value2 or http://host:port/service?fieldname1=value1&fieldname2=value2 Actual values are converted from URL encoded string representations to their native types.

GWWS attempts to convert values to the corresponding VIEW/VIEW32 member depending on the target type: number types from their string representation to their Oracle Tuxedo ones:

  • float notation for float and double VIEW/VIEW32 types
  • integer notation for int, long and other integer based types

FLD_CHAR fields are translated from URL-encoded content(i.e., representable characters or their '%xx' representation string for all other types)

The fieldname=value notation is used with:

  • FBNAME field name when configured in the view description.
  • CNAME value when no FBNAME is present in the view description.

If neither FBNAME nor CNAME matches for this subtype, a mapping error is returned.

FML/FML32 http://host:port/service?fieldname1=value1&fieldname2=value2or, for multiple ocurrences:http://host:port/service?fieldname1=value1&fieldname1=value2 Actual values are converted from URL encoded string representations to their native types.

GWWS attempts to convert values to the corresponding VIEWFML/VIEWFML32 member depending on the target type: number types from their string representation to their Oracle Tuxedo ones:

  • float notation for float and double VIEWFML/VIEWFML32 types
  • integer notation for int, long and other integer-based types
  • FLD_CHAR fields are translated from URL-encoded content (i.e., representable characters or their '%xx' representation
  • string for all other types
RECORD http://host:port/service?value1&value2 or http://host:port/service?fieldname1=value1&fieldname2=value2 Actual values are converted from URL encoded string representations to their native types. GWWS attempts to convert values to the corresponding RECORD buffer member depending on the target type.