Optional operationId if this DataSource supports two or more variants of one of the basic DataSource operations, for
instance, a "fetch" that uses full text search and a "fetch" that accepts per-field search criteria.

For a DataSource contacting a WSDL web service, setting
this flag means the DataSource doesn't actually attempt to contact the server but generates a sample response instead,
based on the XML Schema of the response message embedded in the WSDL.

Optional operationId if this DataSource supports two or more variants of one of the basic DataSource operations, for
instance, a "fetch" that uses full text search and a "fetch" that accepts per-field search criteria.

For a DataSource contacting a WSDL web service, setting
this flag means the DataSource doesn't actually attempt to contact the server but generates a sample response instead,
based on the XML Schema of the response message embedded in the WSDL.

NOTE: If you specify this property in a DataSource descriptor (.ds.xml
file), it is enforced on the server. This means that if you run a request containing AdvancedCriteria against an
OperationBinding that advertises itself as allowAdvancedCriteria:false, it will be rejected.

NOTE: If you specify this property in a DataSource descriptor (.ds.xml
file), it is enforced on the server. This means that if you run a request containing AdvancedCriteria against an
OperationBinding that advertises itself as allowAdvancedCriteria:false, it will be rejected.

setDataProtocol

When a DataSource operation such as fetchData() is
invoked on this DataSource or a component bound to this DataSource, the data passed to the operation, if any, will be
sent to the dataURL. The dataProtocol property controls the format in which the data is sent:
SOAP message, HTTP GET or POST of parameters, etc.

The dataProtocol property need not be set for a
DataSource with a WebService ( DataSource.serviceNamespace is set), in this case, SOAP messaging is used by default.

Developers may completely
bypass the Smart GWT comm system by setting dataProtocol to "clientCustom". In this case Smart GWT will not
attempt to send any data to the server after calling DataSource.transformRequest(). Instead the developer is expected to implement transformRequest() such that
it performs the necessary data action outside of Smart GWT, and then calls DataSource.processResponse(), passing in the DSRequest.requestId and an appropriate set of DSResponse properties to
indicate the result of the action.

NOTE: when dataFormat is "iscServer", dataProtocol is not consulted. Instead, Smart GWT uses a proprietary wire
format to communicate with the Smart GWT server, and the server-side DSRequest and DSResponse objects should be used to
access request data and form responses.

getDataProtocol

When a DataSource operation such as fetchData() is
invoked on this DataSource or a component bound to this DataSource, the data passed to the operation, if any, will be
sent to the dataURL. The dataProtocol property controls the format in which the data is sent:
SOAP message, HTTP GET or POST of parameters, etc.

The dataProtocol property need not be set for a
DataSource with a WebService ( DataSource.serviceNamespace is set), in this case, SOAP messaging is used by default.

Developers may completely
bypass the Smart GWT comm system by setting dataProtocol to "clientCustom". In this case Smart GWT will not
attempt to send any data to the server after calling DataSource.transformRequest(). Instead the developer is expected to implement transformRequest() such that
it performs the necessary data action outside of Smart GWT, and then calls DataSource.processResponse(), passing in the DSRequest.requestId and an appropriate set of DSResponse properties to
indicate the result of the action.

NOTE: when dataFormat is "iscServer", dataProtocol is not consulted. Instead, Smart GWT uses a proprietary wire
format to communicate with the Smart GWT server, and the server-side DSRequest and DSResponse objects should be used to
access request data and form responses.

setDataTransport

Transport to use for this operation. Defaults to DataSource.dataTransport, which in turn defaults to defaultTransport. This would typically only be set to enable "scriptInclude" transport for contacting JSON web services hosted on servers other than the origin server.

getDataTransport

Transport to use for this operation. Defaults to DataSource.dataTransport, which in turn defaults to defaultTransport. This would typically only be set to enable "scriptInclude" transport for contacting JSON web services hosted on servers other than the origin server.

setExportResults

When set, causes the results of the DataSource Operation to be exported to a file, whose
name and format are indicated by exportFilename and
exportAs respectively. When no exportFilename is
provided, the
default is Results and the default value of exportAs is csv. Once the Operation
completes, DSRequest.exportDisplay specifies whether the
exported data will be downloaded to the file-system or displayed in a new window. The
default value of exportDisplay is "download" which displays the Save As dialog. See
ExportDisplay for more information.

You can also configure the style of line-breaks to use when generating the output. See
LineBreakStyle for more information.

As well as setting this and other properties on the OperationBinding, Exports can be
initiated in two other ways. You can set properties on the dsRequest by passing
requestProperties into DataSource.exportData(). Note that
this method does
not support exporting to JSON format (see
this post for more detail).
Additionally, custom server code may set export-related properties on the
DSResponse.

getExportResults

public boolean getExportResults()

When set, causes the results of the DataSource Operation to be exported to a file, whose
name and format are indicated by exportFilename and
exportAs respectively. When no exportFilename is
provided, the
default is Results and the default value of exportAs is csv. Once the Operation
completes, DSRequest.exportDisplay specifies whether the
exported data will be downloaded to the file-system or displayed in a new window. The
default value of exportDisplay is "download" which displays the Save As dialog. See
ExportDisplay for more information.

You can also configure the style of line-breaks to use when generating the output. See
LineBreakStyle for more information.

As well as setting this and other properties on the OperationBinding, Exports can be
initiated in two other ways. You can set properties on the dsRequest by passing
requestProperties into DataSource.exportData(). Note that
this method does
not support exporting to JSON format (see
this post for more detail).
Additionally, custom server code may set export-related properties on the
DSResponse.

setOperationId

Optional operationId if this DataSource supports two or more variants of one of the basic DataSource operations, for
instance, a "fetch" that uses full text search and a "fetch" that accepts per-field search criteria. See DSRequest.operationId for usage.

getOperationId

public java.lang.String getOperationId()

Optional operationId if this DataSource supports two or more variants of one of the basic DataSource operations, for
instance, a "fetch" that uses full text search and a "fetch" that accepts per-field search criteria. See DSRequest.operationId for usage.

setRecordXPath

For an XML or JSON DataSource, XPath expression used to retrieve the objects that will become DataSource records.

For example, an "ItemSearch" web service might return a "Results" structure containing metadata along with the set of
Items that one might want to display in a grid. An XPath expression like "/Results/Items" could be used to retrieve
just the Items, which would then become DataSource records.

For processing XML results, see xmlNamespaces for information on the namespaces that are available in this XPath expression. If you are contacting a
WSDL web service, note that recordName is an alternative
way to specify which records should be selected by their tagName or type, and this is usually simpler.

getRecordXPath

public java.lang.String getRecordXPath()

For an XML or JSON DataSource, XPath expression used to retrieve the objects that will become DataSource records.

For example, an "ItemSearch" web service might return a "Results" structure containing metadata along with the set of
Items that one might want to display in a grid. An XPath expression like "/Results/Items" could be used to retrieve
just the Items, which would then become DataSource records.

For processing XML results, see xmlNamespaces for information on the namespaces that are available in this XPath expression. If you are contacting a
WSDL web service, note that recordName is an alternative
way to specify which records should be selected by their tagName or type, and this is usually simpler.

setRequestProperties

Additional properties to pass through to the DSRequest created for this operation. Note
that these will be cumulative with and will override on a per-property basis any properties set via DataSource.requestProperties.

getRequestProperties

Additional properties to pass through to the DSRequest created for this operation. Note
that these will be cumulative with and will override on a per-property basis any properties set via DataSource.requestProperties.

setRequiredCriterion

A comma-separated list of field names that must be present in criteria / advancedCriteria provided by the caller.
Failure to provide any one of these will yield a STATUS_CRITERIA_REQUIRED_ERROR from the server.

getRequiredCriterion

public java.lang.String getRequiredCriterion()

A comma-separated list of field names that must be present in criteria / advancedCriteria provided by the caller.
Failure to provide any one of these will yield a STATUS_CRITERIA_REQUIRED_ERROR from the server.

setResponseDataSchema

Optional schema describing how to extract DataSource records from the XML elements selected.

Once a set of XML
elements have been selected via recordXPath or recordName, those elements are normally
transformed to JavaScript objects using the fields of the DataSource that owns the operationBinding. A
responseDataSchema can be specified instead if the XML differs in some way between different DataSource
operations, such that different values for field.valueXPath may be necessary to extract the same DataSource record from slightly different XML structures.

getResponseDataSchema

Optional schema describing how to extract DataSource records from the XML elements selected.

Once a set of XML
elements have been selected via recordXPath or recordName, those elements are normally
transformed to JavaScript objects using the fields of the DataSource that owns the operationBinding. A
responseDataSchema can be specified instead if the XML differs in some way between different DataSource
operations, such that different values for field.valueXPath may be necessary to extract the same DataSource record from slightly different XML structures.

setSpoofResponses

For a DataSource contacting a WSDL web service, setting
this flag means the DataSource doesn't actually attempt to contact the server but generates a sample response instead,
based on the XML Schema of the response message embedded in the WSDL.

The spoofed response will include all
complexType elements and will fill in appropriate values by type for all simpleType elements, although the spoofed data
will not conform to all xs:restriction declarations (eg xs:pattern).

Note that if your WSDL does not fully describe
the response format (some WSDL services just have a placeholder <xs:any> element), Smart GWT can only produce a
partial response. To use a hand-generated sample response, just save an XML file to disk and use the dataURL setting to point to it.

getSpoofResponses

public boolean getSpoofResponses()

For a DataSource contacting a WSDL web service, setting
this flag means the DataSource doesn't actually attempt to contact the server but generates a sample response instead,
based on the XML Schema of the response message embedded in the WSDL.

The spoofed response will include all
complexType elements and will fill in appropriate values by type for all simpleType elements, although the spoofed data
will not conform to all xs:restriction declarations (eg xs:pattern).

Note that if your WSDL does not fully describe
the response format (some WSDL services just have a placeholder <xs:any> element), Smart GWT can only produce a
partial response. To use a hand-generated sample response, just save an XML file to disk and use the dataURL setting to point to it.

Typical usage is to combine operationBinding.useFlatFields with searchForm.useFlatFields, with the SearchForm bound to the input
message of the web service operation set as wsOperation. This allows gratuitous nesting to be consistently bypassed in both the user presentation and in the
actual XML messaging.

Note that useFlatFields is not generally recommended for use with input messages
where multiple simple type fields exist with the same name, however if used in this way, the first field to use a given
name wins. "first" means the first field encountered in a depth first search. "wins" means only the first field will
be available in data binding, and only the first field will be populated in the generated XML message.

Typical usage is to combine operationBinding.useFlatFields with searchForm.useFlatFields, with the SearchForm bound to the input
message of the web service operation set as wsOperation. This allows gratuitous nesting to be consistently bypassed in both the user presentation and in the
actual XML messaging.

Note that useFlatFields is not generally recommended for use with input messages
where multiple simple type fields exist with the same name, however if used in this way, the first field to use a given
name wins. "first" means the first field encountered in a depth first search. "wins" means only the first field will
be available in data binding, and only the first field will be populated in the generated XML message.

Setting wsOperation means that DSRequest.data will be serialized as the request message for the specified web service operation, with namespacing and
soap encoding handled automatically. See DataSource.transformRequest() for how to customize what data is sent to the server.

Setting wsOperation means that DSRequest.data will be serialized as the request message for the specified web service operation, with namespacing and
soap encoding handled automatically. See DataSource.transformRequest() for how to customize what data is sent to the server.

By default, all namespaces declared on the document element (outermost element of the
response) are made available with the prefix used in the document itself.

Then, for non-WSDL-described XML results, if there is a default namespace on the document
element, it is made available with the special prefix "default".

For results of WSDL-described operations, the prefix "service" means the service namespace,
that is, the "targetNamespace" on the <definitions> element from the WSDL file. The prefix
"schema" means the namespace of the outermost element in the output message for the current
operation. "default" will be the schema namespace if there is one, otherwise the service
namespace.

By default, all namespaces declared on the document element (outermost element of the
response) are made available with the prefix used in the document itself.

Then, for non-WSDL-described XML results, if there is a default namespace on the document
element, it is made available with the special prefix "default".

For results of WSDL-described operations, the prefix "service" means the service namespace,
that is, the "targetNamespace" on the <definitions> element from the WSDL file. The prefix
"schema" means the namespace of the outermost element in the output message for the current
operation. "default" will be the schema namespace if there is one, otherwise the service
namespace.