Class OperationBinding
- All Implemented Interfaces:
HasHandlers
DataSource.operationBindings
.-
Field Summary
Fields inherited from class com.smartgwt.client.core.DataClass
factoryCreated, factoryProperties
-
Constructor Summary
ConstructorDescriptionOperationBinding
(JavaScriptObject jsObj) OperationBinding
(DSOperationType operationType, String dataURL) -
Method Summary
Modifier and TypeMethodDescriptionThis property indicates whether this operation supports AdvancedCriteria.Operation-level override for the DataSource-levelarrayCriteriaForceExact
flag.A per-operationBinding setting for beanClassName, otherwise also settable at the top-level DataSource configuration.Applies only to dataFormat: "json".Format for response data for this operation.Controls the format in which inputs are sent to the dataURL.Transport to use for this operation.URL to contact to fulfill DSRequests for this operationBinding.HTTP parameters that should be submitted with every DSRequest.An optional description of the operationBinding's behavior.The format in which the data should be exported.String[]
The list of field-names to export.The name of the file to save the exported data into.boolean
When set, causes the results of the DataSource Operation to be exported to a file, whose name and format are indicated byexportFilename
andexportAs
respectively.If set, every invocation of this operationBinding will invalidate the local cache, forcing a server visit to refresh the data.The style of line-breaks to use in the exported output.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.Which operationType this operationBinding is for.static OperationBinding
getOrCreateRef
(JavaScriptObject jsObj) ConfiguresDataSource.preventHTTPCaching
on a per-operationType basis.For an XML DataSource, tagName of the elements to be used as records.For an XML , JSON orRestConnector
DataSource, an XPath expression used to retrieve the objects that will become DataSource records.Additional properties to pass through to theDSRequest
created for this operation.A comma-separated list of field names that must be present in criteria / advancedCriteria provided by the caller.Optional schema describing how to extract DataSource records from the XML elements selected.boolean
For a DataSource contacting aWSDL 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.boolean
SettinguseFlatFields
on an operationBinding is equivalent to settingDSRequest.useFlatFields
on all DataSource requests with the sameoperationType
as thisoperationBinding
.Whether to use theHttpProxy
servlet to send requests described by this operationBinding.Name of the web service operation that will be invoked in order to execute this DataSource operation.Optional object declaring namespace prefixes for use inrecordXPath
andDataSourceField.valueXPath
XPath expressions.setAllowAdvancedCriteria
(Boolean allowAdvancedCriteria) This property indicates whether this operation supports AdvancedCriteria.setArrayCriteriaForceExact
(Boolean arrayCriteriaForceExact) Operation-level override for the DataSource-levelarrayCriteriaForceExact
flag.setBeanClassName
(String beanClassName) A per-operationBinding setting for beanClassName, otherwise also settable at the top-level DataSource configuration.setCallbackParam
(String callbackParam) Applies only to dataFormat: "json".setDataFormat
(DSDataFormat dataFormat) Format for response data for this operation.setDataProtocol
(DSProtocol dataProtocol) Controls the format in which inputs are sent to the dataURL.setDataTransport
(RPCTransport dataTransport) Transport to use for this operation.setDataURL
(String dataURL) URL to contact to fulfill DSRequests for this operationBinding.setDefaultParams
(Map defaultParams) HTTP parameters that should be submitted with every DSRequest.setDescription
(String description) An optional description of the operationBinding's behavior.setExportAs
(ExportFormat exportAs) The format in which the data should be exported.setExportFields
(String... exportFields) The list of field-names to export.setExportFilename
(String exportFilename) The name of the file to save the exported data into.setExportResults
(boolean exportResults) When set, causes the results of the DataSource Operation to be exported to a file, whose name and format are indicated byexportFilename
andexportAs
respectively.setInvalidateCache
(Boolean invalidateCache) If set, every invocation of this operationBinding will invalidate the local cache, forcing a server visit to refresh the data.setLineBreakStyle
(String lineBreakStyle) The style of line-breaks to use in the exported output.setOperationId
(String operationId) 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.setOperationType
(DSOperationType operationType) Which operationType this operationBinding is for.setPreventHTTPCaching
(Boolean preventHTTPCaching) ConfiguresDataSource.preventHTTPCaching
on a per-operationType basis.setRecordName
(String recordName) For an XML DataSource, tagName of the elements to be used as records.setRecordXPath
(String recordXPath) For an XML , JSON orRestConnector
DataSource, an XPath expression used to retrieve the objects that will become DataSource records.setRequestProperties
(DSRequest requestProperties) Additional properties to pass through to theDSRequest
created for this operation.setRequiredCriterion
(String requiredCriterion) A comma-separated list of field names that must be present in criteria / advancedCriteria provided by the caller.setResponseDataSchema
(DataSource responseDataSchema) Optional schema describing how to extract DataSource records from the XML elements selected.setSpoofResponses
(boolean spoofResponses) For a DataSource contacting aWSDL 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.setUseFlatFields
(boolean useFlatFields) SettinguseFlatFields
on an operationBinding is equivalent to settingDSRequest.useFlatFields
on all DataSource requests with the sameoperationType
as thisoperationBinding
.setUseHttpProxy
(Boolean useHttpProxy) Whether to use theHttpProxy
servlet to send requests described by this operationBinding.setWsOperation
(String wsOperation) Name of the web service operation that will be invoked in order to execute this DataSource operation.setXmlNamespaces
(XmlNamespaces xmlNamespaces) Optional object declaring namespace prefixes for use inrecordXPath
andDataSourceField.valueXPath
XPath expressions.Methods inherited from class com.smartgwt.client.core.DataClass
applyFactoryProperties, doAddHandler, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsDoubleArray, getAttributeAsElement, getAttributeAsFloat, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated
-
Constructor Details
-
OperationBinding
public OperationBinding() -
OperationBinding
-
OperationBinding
-
-
Method Details
-
getOrCreateRef
-
setAllowAdvancedCriteria
This property indicates whether this operation supports AdvancedCriteria. This setting overridesDataSource.allowAdvancedCriteria
for this operation only. SeeDataSource.supportsAdvancedCriteria()
for further information.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 asallowAdvancedCriteria:false
, it will be rejected.Note : This is an advanced setting
- Parameters:
allowAdvancedCriteria
- New allowAdvancedCriteria value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getAllowAdvancedCriteria
This property indicates whether this operation supports AdvancedCriteria. This setting overridesDataSource.allowAdvancedCriteria
for this operation only. SeeDataSource.supportsAdvancedCriteria()
for further information.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 asallowAdvancedCriteria:false
, it will be rejected.- Returns:
- Current allowAdvancedCriteria value. Default value is null
- See Also:
-
setArrayCriteriaForceExact
Operation-level override for the DataSource-levelarrayCriteriaForceExact
flag. See the documentation for that flag for details.- Parameters:
arrayCriteriaForceExact
- New arrayCriteriaForceExact value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getArrayCriteriaForceExact
Operation-level override for the DataSource-levelarrayCriteriaForceExact
flag. See the documentation for that flag for details.- Returns:
- Current arrayCriteriaForceExact value. Default value is null
- See Also:
-
setBeanClassName
A per-operationBinding setting for beanClassName, otherwise also settable at the top-level DataSource configuration.- Parameters:
beanClassName
- New beanClassName value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getBeanClassName
A per-operationBinding setting for beanClassName, otherwise also settable at the top-level DataSource configuration.- Returns:
- Current beanClassName value. Default value is null
- See Also:
-
setCallbackParam
Applies only to dataFormat: "json". Specifies the name of the query parameter that tells your JSON service what function to call as part of the response for this operation.Typically set once for the DataSource as a whole via
DataSource.callbackParam
.- Parameters:
callbackParam
- New callbackParam value. Default value is "callback"- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getCallbackParam
Applies only to dataFormat: "json". Specifies the name of the query parameter that tells your JSON service what function to call as part of the response for this operation.Typically set once for the DataSource as a whole via
DataSource.callbackParam
.- Returns:
- Current callbackParam value. Default value is "callback"
- See Also:
-
setDataFormat
Format for response data for this operation.Typically set once for the DataSource as a whole via
DataSource.dataFormat
.- Parameters:
dataFormat
- New dataFormat value. Default value is "iscServer"- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getDataFormat
Format for response data for this operation.Typically set once for the DataSource as a whole via
DataSource.dataFormat
.- Returns:
- Current dataFormat value. Default value is "iscServer"
- See Also:
-
setDataProtocol
Controls the format in which inputs are sent to the dataURL.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
. ThedataProtocol
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 callingDataSource.transformRequest()
. Instead the developer is expected to implementtransformRequest()
such that it performs the necessary data action outside of Smart GWT, and then callsDataSource.processResponse()
, passing in theDSRequest.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.- Parameters:
dataProtocol
- New dataProtocol value. Default value is "getParams"- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getDataProtocol
Controls the format in which inputs are sent to the dataURL.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
. ThedataProtocol
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 callingDataSource.transformRequest()
. Instead the developer is expected to implementtransformRequest()
such that it performs the necessary data action outside of Smart GWT, and then callsDataSource.processResponse()
, passing in theDSRequest.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.- Returns:
- Current dataProtocol value. Default value is "getParams"
- See Also:
-
setDataTransport
Transport to use for this operation. Defaults toDataSource.dataTransport
, which in turn defaults todefaultTransport
. This would typically only be set to enable "scriptInclude" transport for contactingJSON
web services hosted on servers other than the origin server.When using the "scriptInclude" transport, be sure to set
DataSource.callbackParam
orcallbackParam
to match the name of the query parameter name expected by your JSON service provider.- Parameters:
dataTransport
- New dataTransport value. Default value is RPCManager.defaultTransport- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getDataTransport
Transport to use for this operation. Defaults toDataSource.dataTransport
, which in turn defaults todefaultTransport
. This would typically only be set to enable "scriptInclude" transport for contactingJSON
web services hosted on servers other than the origin server.When using the "scriptInclude" transport, be sure to set
DataSource.callbackParam
orcallbackParam
to match the name of the query parameter name expected by your JSON service provider.- Returns:
- Current dataTransport value. Default value is RPCManager.defaultTransport
- See Also:
-
setDataURL
URL to contact to fulfill DSRequests for this operationBinding.dataURL
is typically set asDataSource.dataURL
rather than on each individual operationBinding. However, when usingdataURL
to configure the server side of aRestConnector
, it is common to setdataURL
at the operationBinding level, as described in theDataSource-level dataURL
documentation.dataURL
can be omitted for a DataSource using a Web Service (DataSource.serviceNamespace
is set).- Parameters:
dataURL
- New dataURL value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getDataURL
URL to contact to fulfill DSRequests for this operationBinding.dataURL
is typically set asDataSource.dataURL
rather than on each individual operationBinding. However, when usingdataURL
to configure the server side of aRestConnector
, it is common to setdataURL
at the operationBinding level, as described in theDataSource-level dataURL
documentation.dataURL
can be omitted for a DataSource using a Web Service (DataSource.serviceNamespace
is set).- Returns:
- Current dataURL value. Default value is null
- See Also:
-
setDefaultParams
HTTP parameters that should be submitted with every DSRequest.Useful for authenticated services that require a sessionId with every request.
Can be set for all operations of a given DataSource as DataSource.defaultParams.
Note : This is an advanced setting
- Parameters:
defaultParams
- New defaultParams value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getDefaultParams
HTTP parameters that should be submitted with every DSRequest.Useful for authenticated services that require a sessionId with every request.
Can be set for all operations of a given DataSource as DataSource.defaultParams.
- Returns:
- Current defaultParams value. Default value is null
- See Also:
-
setDescription
An optional description of the operationBinding's behavior. Not automatically exposed on any component, but useful for developer documentation, and as such is included on anyOpenAPI specification
generated by the framework. Markdown is a commonly used syntax, but you may also embed HTML content in a CDATA tag.- Parameters:
description
- New description value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls
-
getDescription
An optional description of the operationBinding's behavior. Not automatically exposed on any component, but useful for developer documentation, and as such is included on anyOpenAPI specification
generated by the framework. Markdown is a commonly used syntax, but you may also embed HTML content in a CDATA tag.- Returns:
- Current description value. Default value is null
-
setExportAs
The format in which the data should be exported. Default is "csv". SeeExportFormat
for more information.- Parameters:
exportAs
- New exportAs value. Default value is "csv"- Returns:
OperationBinding
instance, for chaining setter calls
-
getExportAs
The format in which the data should be exported. Default is "csv". SeeExportFormat
for more information.- Returns:
- Current exportAs value. Default value is "csv"
-
setExportFields
The list of field-names to export. If provided, the field-list in the exported output is limited and sorted as per the list.If exportFields is not provided, the exported output includes all visible fields from the DataSource (field.hidden=false), sorted in the order they're defined.
- Parameters:
exportFields
- New exportFields value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls
-
getExportFields
The list of field-names to export. If provided, the field-list in the exported output is limited and sorted as per the list.If exportFields is not provided, the exported output includes all visible fields from the DataSource (field.hidden=false), sorted in the order they're defined.
- Returns:
- Current exportFields value. Default value is null
-
setExportFilename
The name of the file to save the exported data into.- Parameters:
exportFilename
- New exportFilename value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls
-
getExportFilename
The name of the file to save the exported data into.- Returns:
- Current exportFilename value. Default value is null
-
setExportResults
When set, causes the results of the DataSource Operation to be exported to a file, whose name and format are indicated byexportFilename
andexportAs
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. SeeExportDisplay
for more information.The export field-list can also be configured, see
DSRequest.exportFields
.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 intoDataSource.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 theDSResponse
.Format Examples
XML format
<List> <Object> <id>10101</id> <displayName>Record 10101</displayName> </Object> </List>
JSON Format[ { id: 10101, displayName: "Record 10101" } ]
CSV Formatid,displayName 10101,"Record 10101"
- Parameters:
exportResults
- New exportResults value. Default value is false- Returns:
OperationBinding
instance, for chaining setter calls
-
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 byexportFilename
andexportAs
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. SeeExportDisplay
for more information.The export field-list can also be configured, see
DSRequest.exportFields
.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 intoDataSource.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 theDSResponse
.Format Examples
XML format
<List> <Object> <id>10101</id> <displayName>Record 10101</displayName> </Object> </List>
JSON Format[ { id: 10101, displayName: "Record 10101" } ]
CSV Formatid,displayName 10101,"Record 10101"
- Returns:
- Current exportResults value. Default value is false
-
setInvalidateCache
If set, every invocation of this operationBinding will invalidate the local cache, forcing a server visit to refresh the data.- Parameters:
invalidateCache
- New invalidateCache value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls
-
getInvalidateCache
If set, every invocation of this operationBinding will invalidate the local cache, forcing a server visit to refresh the data.- Returns:
- Current invalidateCache value. Default value is null
-
setLineBreakStyle
The style of line-breaks to use in the exported output. SeeLineBreakStyle
for more information.- Parameters:
lineBreakStyle
- New lineBreakStyle value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls
-
getLineBreakStyle
The style of line-breaks to use in the exported output. SeeLineBreakStyle
for more information.- Returns:
- Current lineBreakStyle value. Default value is null
-
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. SeeDSRequest.operationId
for usage.- Parameters:
operationId
- New operationId value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
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. SeeDSRequest.operationId
for usage.- Returns:
- Current operationId value. Default value is null
- See Also:
-
setOperationType
Which operationType this operationBinding is for. This property is only settable on an operationBinding, not a DataSource as a whole.- Parameters:
operationType
- New operationType value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getOperationType
Which operationType this operationBinding is for. This property is only settable on an operationBinding, not a DataSource as a whole.- Returns:
- Current operationType value. Default value is null
- See Also:
-
setPreventHTTPCaching
ConfiguresDataSource.preventHTTPCaching
on a per-operationType basis.- Parameters:
preventHTTPCaching
- New preventHTTPCaching value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls
-
getPreventHTTPCaching
ConfiguresDataSource.preventHTTPCaching
on a per-operationType basis.- Returns:
- Current preventHTTPCaching value. Default value is null
-
setRecordName
For an XML DataSource, tagName of the elements to be used as records.This is a simple alternative to
recordXPath
when the elements to be used as records all share a tagName.When a DataSource has a WebService,
recordName
can also be set to the name of anycomplexType
declared within the WebService's WSDL file.- Parameters:
recordName
- New recordName value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getRecordName
For an XML DataSource, tagName of the elements to be used as records.This is a simple alternative to
recordXPath
when the elements to be used as records all share a tagName.When a DataSource has a WebService,
recordName
can also be set to the name of anycomplexType
declared within the WebService's WSDL file.- Returns:
- Current recordName value. Default value is null
- See Also:
-
setRecordXPath
For an XML , JSON orRestConnector
DataSource, an 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 a JSON web service, the
recordXPath
is applied to the returned JSON data viaXMLTools.selectObjects()
. Only limited XPath syntax is allowed; seeselectObjects()
for details.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 thatrecordName
is an alternative way to specify which records should be selected by their tagName or type, and this is usually simpler.To learn about XPath, try the following search: http://www.google.com/search?q=xpath+tutorial
- Parameters:
recordXPath
- New recordXPath value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getRecordXPath
For an XML , JSON orRestConnector
DataSource, an 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 a JSON web service, the
recordXPath
is applied to the returned JSON data viaXMLTools.selectObjects()
. Only limited XPath syntax is allowed; seeselectObjects()
for details.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 thatrecordName
is an alternative way to specify which records should be selected by their tagName or type, and this is usually simpler.To learn about XPath, try the following search: http://www.google.com/search?q=xpath+tutorial
- Returns:
- Current recordXPath value. Default value is null
- See Also:
-
setRequestProperties
Additional properties to pass through to theDSRequest
created for this operation. Note that these will be cumulative with and will override on a per-property basis any properties set viaDataSource.requestProperties
.These properties are applied before
DataSource.transformRequest()
is called.- Parameters:
requestProperties
- New requestProperties value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getRequestProperties
Additional properties to pass through to theDSRequest
created for this operation. Note that these will be cumulative with and will override on a per-property basis any properties set viaDataSource.requestProperties
.These properties are applied before
DataSource.transformRequest()
is called.- Returns:
- Current requestProperties value. Default value is null
- See Also:
-
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 aSTATUS_CRITERIA_REQUIRED_ERROR
from the server.- Parameters:
requiredCriterion
- New requiredCriterion value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
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 aSTATUS_CRITERIA_REQUIRED_ERROR
from the server.- Returns:
- Current requiredCriterion value. Default value is null
- See Also:
-
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
orrecordName
, those elements are normally transformed to JavaScript objects using thefields
of the DataSource that owns the operationBinding. AresponseDataSchema
can be specified instead if the XML differs in some way between different DataSource operations, such that different values forfield.valueXPath
may be necessary to extract the same DataSource record from slightly different XML structures.Note : This is an advanced setting
- Parameters:
responseDataSchema
- New responseDataSchema value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
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
orrecordName
, those elements are normally transformed to JavaScript objects using thefields
of the DataSource that owns the operationBinding. AresponseDataSchema
can be specified instead if the XML differs in some way between different DataSource operations, such that different values forfield.valueXPath
may be necessary to extract the same DataSource record from slightly different XML structures.- Returns:
- Current responseDataSchema value. Default value is null
- See Also:
-
setSpoofResponses
For a DataSource contacting aWSDL 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.- Parameters:
spoofResponses
- New spoofResponses value. Default value is false- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getSpoofResponses
public boolean getSpoofResponses()For a DataSource contacting aWSDL 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.- Returns:
- Current spoofResponses value. Default value is false
- See Also:
-
setUseFlatFields
SettinguseFlatFields
on an operationBinding is equivalent to settingDSRequest.useFlatFields
on all DataSource requests with the sameoperationType
as thisoperationBinding
.Typical usage is to combine operationBinding.useFlatFields with
searchForm.useFlatFields
, with theSearchForm
bound to theinput message
of the web service operation set aswsOperation
. 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.- Parameters:
useFlatFields
- New useFlatFields value. Default value is false- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getUseFlatFields
public boolean getUseFlatFields()SettinguseFlatFields
on an operationBinding is equivalent to settingDSRequest.useFlatFields
on all DataSource requests with the sameoperationType
as thisoperationBinding
.Typical usage is to combine operationBinding.useFlatFields with
searchForm.useFlatFields
, with theSearchForm
bound to theinput message
of the web service operation set aswsOperation
. 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.- Returns:
- Current useFlatFields value. Default value is false
- See Also:
-
setUseHttpProxy
Whether to use theHttpProxy
servlet to send requests described by this operationBinding. If unset, automatically detects whether using the HttpProxy is necessary based on the same-origin policy.Valid only with
dataProtocol
settings other than ISCServer.- Parameters:
useHttpProxy
- New useHttpProxy value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getUseHttpProxy
Whether to use theHttpProxy
servlet to send requests described by this operationBinding. If unset, automatically detects whether using the HttpProxy is necessary based on the same-origin policy.Valid only with
dataProtocol
settings other than ISCServer.- Returns:
- Current useHttpProxy value. Default value is null
- See Also:
-
setWsOperation
Name of the web service operation that will be invoked in order to execute this DataSource operation.Valid only for a DataSource that has a WebService (
DataSource.serviceNamespace
is set). Otherwise, usedataURL
.Setting
wsOperation
means thatDSRequest.data
will be serialized as the request message for the specified web service operation, with namespacing and soap encoding handled automatically. SeeDataSource.transformRequest()
for how to customize what data is sent to the server.- Parameters:
wsOperation
- New wsOperation value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getWsOperation
Name of the web service operation that will be invoked in order to execute this DataSource operation.Valid only for a DataSource that has a WebService (
DataSource.serviceNamespace
is set). Otherwise, usedataURL
.Setting
wsOperation
means thatDSRequest.data
will be serialized as the request message for the specified web service operation, with namespacing and soap encoding handled automatically. SeeDataSource.transformRequest()
for how to customize what data is sent to the server.- Returns:
- Current wsOperation value. Default value is null
- See Also:
-
setXmlNamespaces
Optional object declaring namespace prefixes for use inrecordXPath
andDataSourceField.valueXPath
XPath expressions.xmlNamespaces
should be specified as a mapping from namespace prefix to namespace URI, for example:xmlNamespaces : { az : "http://webservices.amazon.com/AWSECommerceService/2005-03-23" }
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.
For basic information on XML Namespaces and their use in XPath, try the following search: http://www.google.com/search?q=XPath+xml+namespaces
- Parameters:
xmlNamespaces
- New xmlNamespaces value. Default value is null- Returns:
OperationBinding
instance, for chaining setter calls- See Also:
-
getXmlNamespaces
Optional object declaring namespace prefixes for use inrecordXPath
andDataSourceField.valueXPath
XPath expressions.xmlNamespaces
should be specified as a mapping from namespace prefix to namespace URI, for example:xmlNamespaces : { az : "http://webservices.amazon.com/AWSECommerceService/2005-03-23" }
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.
For basic information on XML Namespaces and their use in XPath, try the following search: http://www.google.com/search?q=XPath+xml+namespaces
- Returns:
- Current xmlNamespaces value. Default value is null
- See Also:
-