|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.smartgwt.client.core.JsObject
com.smartgwt.client.core.DataClass
com.smartgwt.client.rpc.RPCRequest
com.smartgwt.client.data.DSRequest
public class DSRequest
Request sent to the server to initiate a DataSource operation
.
All properties which are legal on RPCRequest
are legal, in addition to the properties
listed here.
RPCRequest
Field Summary |
---|
Fields inherited from class com.smartgwt.client.core.JsObject |
---|
jsObj |
Constructor Summary | |
---|---|
DSRequest()
|
|
DSRequest(JavaScriptObject jsObj)
|
Method Summary | |
---|---|
static DSRequest[] |
convertToDSRequestArray(JavaScriptObject nativeArray)
|
java.lang.String |
getComponentId()
For requests submitted by a DataBoundComponent , the ID of the submitting component. |
Criteria |
getCriteria()
Return the Criteria associated with a FETCH operation. |
java.lang.String |
getDataSource()
DataSource this DSRequest will act on. |
java.lang.Integer |
getEndRow()
End row of requested results, used only with fetch operations. |
ExportFormat |
getExportAs()
The format in which the data should be exported. |
Record[] |
getExportData()
Only applies to request properties passed to DataBoundComponent.exportClientData . |
java.lang.Boolean |
getExportDatesAsFormattedString()
Only applicable when exporting to native spreadsheet formats XLS and OOXML . |
java.lang.String |
getExportDelimiter()
The character to use as a field-separator in CSV exports. |
ExportDisplay |
getExportDisplay()
Specifies whether the exported data will be downloaded to the file-system or displayed in a new window. |
java.lang.String[] |
getExportFields()
The list of field-names to export. |
java.lang.String |
getExportFilename()
The name of the file to save the exported data into. |
java.lang.String |
getExportFooter()
Optional text to appear at the end of the file. |
java.lang.String |
getExportHeader()
Optional text to appear at the beginning of the file. |
java.lang.Boolean |
getExportResults()
When set, causes the results of the DSRequest to be exported to a file, whose name and format are indicated by exportFilename and
exportAs respectively. |
java.lang.String |
getExportTitleSeparatorChar()
The character with which to replace spaces in field-titles when exporting to XML. |
java.lang.Boolean |
getExportValueFields()
Only applies to request properties passed to DataBoundComponent.exportClientData . |
java.util.Map |
getHeaderData()
For DataSources using SOAP messaging with a WSDL web service, data to be serialized to form SOAP headers, as a map from the header part name to the data. |
java.lang.String |
getLineBreakStyle()
The style of line-breaks to use in the exported output. |
Record |
getOldValues()
For an update or remove operation, the original values from the record that is being updated
or removed. |
java.lang.String |
getOperationId()
When a DataBoundComponent sends a DSRequest, the dsRequest.operationId
will be automatically picked up from the fetchOperation , addOperation , etc properties of the
DataBoundComponent. |
DSOperationType |
getOperationType()
Type of operation being performed: "fetch", "add", "remove", "update" or "custom". |
static DSRequest |
getOrCreateRef(JavaScriptObject jsObj)
|
java.lang.String |
getRequestId()
Automatically generated unique ID for this request. |
ResultSet |
getResultSet()
For advanced use in integrating dataset paging with web services, the ResultSet that issued this "fetch" DSRequest is automatically made available as the resultSet property. |
SortSpecifier[] |
getSortBy()
Fieldname to sortBy |
java.lang.Integer |
getStartRow()
Starting row of requested results, used only with fetch operations. |
TextMatchStyle |
getTextMatchStyle()
For "fetch" operations, how search criteria should be interpreted for text fields: either "exact" for exact match, "startsWith" for matching at the beginning only, or "substring" for case-insensitive substring match. |
java.lang.Boolean |
getUseFlatFields()
When useFlatFields is set for a request to be sent to a WSDL web service, when
creating the input XML message to send to the web service, properties in
request.data will be used as the values for XML elements of the same
name, at
any level of nesting. |
java.lang.Boolean |
getUseFlatHeaderFields()
Cause the useFlatFields XML serialization behavior to be
used for all soap headers in the request. |
ValidationMode |
getValidationMode()
Mode of validation for entered data. |
void |
setAttribute(java.lang.String property,
java.lang.Object value)
Set a custom attribute value on the DSRequest as an Object. |
void |
setComponentId(java.lang.String componentId)
For requests submitted by a DataBoundComponent , the ID of the submitting component. |
void |
setDataSource(java.lang.String dataSource)
DataSource this DSRequest will act on. |
void |
setEndRow(java.lang.Integer endRow)
End row of requested results, used only with fetch operations. |
void |
setExportAs(ExportFormat exportAs)
The format in which the data should be exported. |
void |
setExportData(Record... exportData)
Only applies to request properties passed to DataBoundComponent.exportClientData . |
void |
setExportDatesAsFormattedString(java.lang.Boolean exportDatesAsFormattedString)
Only applicable when exporting to native spreadsheet formats XLS and OOXML . |
void |
setExportDelimiter(java.lang.String exportDelimiter)
The character to use as a field-separator in CSV exports. |
void |
setExportDisplay(ExportDisplay exportDisplay)
Specifies whether the exported data will be downloaded to the file-system or displayed in a new window. |
void |
setExportFields(java.lang.String[] exportFields)
The list of field-names to export. |
void |
setExportFilename(java.lang.String exportFilename)
The name of the file to save the exported data into. |
void |
setExportFooter(java.lang.String exportFooter)
Optional text to appear at the end of the file. |
void |
setExportHeader(java.lang.String exportHeader)
Optional text to appear at the beginning of the file. |
void |
setExportResults(java.lang.Boolean exportResults)
When set, causes the results of the DSRequest to be exported to a file, whose name and format are indicated by exportFilename and
exportAs respectively. |
void |
setExportTitleSeparatorChar(java.lang.String exportTitleSeparatorChar)
The character with which to replace spaces in field-titles when exporting to XML. |
void |
setExportValueFields(java.lang.Boolean exportValueFields)
Only applies to request properties passed to DataBoundComponent.exportClientData . |
void |
setHeaderData(java.util.Map headerData)
For DataSources using SOAP messaging with a WSDL web service, data to be serialized to form SOAP headers, as a map from the header part name to the data. |
void |
setLineBreakStyle(java.lang.String lineBreakStyle)
The style of line-breaks to use in the exported output. |
void |
setOldValues(JavaScriptObject oldValues)
For an update or remove operation, the original values from the record that is being updated
or removed. |
void |
setOldValues(java.util.Map oldValues)
For an update or remove operation, the original values from the record that is being updated
or removed. |
void |
setOldValues(Record oldValues)
For an update or remove operation, the original values from the record that is being updated
or removed. |
void |
setOperationId(java.lang.String operationId)
When a DataBoundComponent sends a DSRequest, the dsRequest.operationId
will be automatically picked up from the fetchOperation , addOperation , etc properties of the
DataBoundComponent. |
void |
setOperationType(DSOperationType operationType)
Type of operation being performed: "fetch", "add", "remove", "update" or "custom". |
void |
setParams(java.util.Map params)
Values to be sent as simple HTTP params, as a JavaScript Object where each property/value pair will become an HTTP parameter name and value. |
void |
setSortBy(SortSpecifier[] sortSpecifiers)
Fieldnames to sortBy. |
void |
setStartRow(java.lang.Integer startRow)
Starting row of requested results, used only with fetch operations. |
void |
setTextMatchStyle(TextMatchStyle textMatchStyle)
For "fetch" operations, how search criteria should be interpreted for text fields: either "exact" for exact match, "startsWith" for matching at the beginning only, or "substring" for case-insensitive substring match. |
void |
setUseFlatFields(java.lang.Boolean useFlatFields)
When useFlatFields is set for a request to be sent to a WSDL web service, when
creating the input XML message to send to the web service, properties in
request.data will be used as the values for XML elements of the same
name, at
any level of nesting. |
void |
setUseFlatHeaderFields(java.lang.Boolean useFlatHeaderFields)
Cause the useFlatFields XML serialization behavior to be
used for all soap headers in the request. |
void |
setValidationMode(ValidationMode validationMode)
Mode of validation for entered data. |
Methods inherited from class com.smartgwt.client.core.JsObject |
---|
isCreated, setJsObj |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DSRequest()
public DSRequest(JavaScriptObject jsObj)
Method Detail |
---|
public static DSRequest getOrCreateRef(JavaScriptObject jsObj)
public void setComponentId(java.lang.String componentId)
DataBoundComponent
, the ID
of the submitting component. This ID will be present for operations
including automatic saves by a ListGrid during editing
, or calls to form.saveData()
. It will not be present for a direct call to a
DataSource method such as DataSource.fetchData
.
Note this is
the component's String ID - you can retrieve the component itself via Canvas.getById
.
componentId
- componentId Default value is nullpublic java.lang.String getComponentId()
DataBoundComponent
, the ID
of the submitting component. This ID will be present for operations
including automatic saves by a ListGrid during editing
, or calls to form.saveData()
. It will not be present for a direct call to a
DataSource method such as DataSource.fetchData
.
Note this is
the component's String ID - you can retrieve the component itself via Canvas.getById
.
public void setDataSource(java.lang.String dataSource)
This property is generally automatically populated, for example when calling
DataSource.fetchData
the dataSource property is set to the target
DataSource.
dataSource
- dataSource Default value is nullpublic java.lang.String getDataSource()
This property is generally automatically populated, for example when calling
DataSource.fetchData
the dataSource property is set to the target
DataSource.
public void setEndRow(java.lang.Integer endRow)
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
endRow
- endRow Default value is nullpublic java.lang.Integer getEndRow()
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
public void setExportAs(ExportFormat exportAs)
ExportFormat
for more
information.
exportAs
- exportAs Default value is "csv"public ExportFormat getExportAs()
ExportFormat
for more
information.
public void setExportData(Record... exportData)
DataBoundComponent.exportClientData
. If specified this property contains an arbitrary set of data to be exported.
exportData
- exportData Default value is nullpublic Record[] getExportData()
DataBoundComponent.exportClientData
. If specified this property contains an arbitrary set of data to be exported.
public void setExportDatesAsFormattedString(java.lang.Boolean exportDatesAsFormattedString)
XLS
and OOXML
. If set, we
export date fields as strings that exactly match the formatting present in the DataBoundComponent
from which we are exporting. Note that this will mean the values are
plain strings in the spreadsheet.
The default behavior when this property is not set is to export date fields as
real date values in the spreadsheet, using whichever date format is prevalent (the format specified on the field in the
component, the dataSourceField or the current system default, in that order). This may result in the spreadsheet cell
having a different format to the value that the user sees in the DataBoundComponent
we are exporting from.
exportDatesAsFormattedString
- exportDatesAsFormattedString Default value is nullpublic java.lang.Boolean getExportDatesAsFormattedString()
XLS
and OOXML
. If set, we
export date fields as strings that exactly match the formatting present in the DataBoundComponent
from which we are exporting. Note that this will mean the values are
plain strings in the spreadsheet.
The default behavior when this property is not set is to export date fields as
real date values in the spreadsheet, using whichever date format is prevalent (the format specified on the field in the
component, the dataSourceField or the current system default, in that order). This may result in the spreadsheet cell
having a different format to the value that the user sees in the DataBoundComponent
we are exporting from.
public void setExportDelimiter(java.lang.String exportDelimiter)
exportDelimiter
- exportDelimiter Default value is ","public java.lang.String getExportDelimiter()
public void setExportDisplay(ExportDisplay exportDisplay)
ExportDisplay
for more information.
exportDisplay
- exportDisplay Default value is "download"public ExportDisplay getExportDisplay()
ExportDisplay
for more information.
public void setExportFilename(java.lang.String exportFilename)
exportFilename
- exportFilename Default value is nullpublic java.lang.String getExportFilename()
public void setExportFooter(java.lang.String exportFooter)
exportFooter
- exportFooter Default value is nullpublic java.lang.String getExportFooter()
public void setExportHeader(java.lang.String exportHeader)
exportHeader
- exportHeader Default value is nullpublic java.lang.String getExportHeader()
public void setExportResults(java.lang.Boolean exportResults)
exportFilename
and
exportAs
respectively. When no exportFilename is provided, the
default is
Results and the default value of exportAs is csv.
The export field-list can also be configured, see exportFields
.
Once the operation completes, exportDisplay
specifies
whether the exported
data should 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 configure the style of line-breaks to use when
generating the output, the delimiter
to use when exporting
to CSV and the separator-character
to use in
field-titles when exporting to XML.
Additionally, you can output arbitrary text before and after the exported data by setting
exportHeader
and exportFooter
.
Note that an export initiated using dsRequest properties does not provide support for JSON format (see this post for more detail).
As well as setting dsRequest.exportResults and related properties, exports can be initiated
in two other ways, via OperationBinding
s and via custom server code which sets
export-related properties on the DSResponse
. Both of those methods support exporting
to JSON format.
Format Examples XML format
<List> <Object> <id>10101</id> <displayName>Record 10101</displayName> </Object> </List>JSON Format
[ { id: 10101, displayName: "Record 10101" } ]CSV Format
id,displayName 10101,"Record 10101"
exportResults
- exportResults Default value is falsepublic java.lang.Boolean getExportResults()
exportFilename
and
exportAs
respectively. When no exportFilename is provided, the
default is
Results and the default value of exportAs is csv.
The export field-list can also be configured, see exportFields
.
Once the operation completes, exportDisplay
specifies
whether the exported
data should 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 configure the style of line-breaks to use when
generating the output, the delimiter
to use when exporting
to CSV and the separator-character
to use in
field-titles when exporting to XML.
Additionally, you can output arbitrary text before and after the exported data by setting
exportHeader
and exportFooter
.
Note that an export initiated using dsRequest properties does not provide support for JSON format (see this post for more detail).
As well as setting dsRequest.exportResults and related properties, exports can be initiated
in two other ways, via OperationBinding
s and via custom server code which sets
export-related properties on the DSResponse
. Both of those methods support exporting
to JSON format.
Format Examples XML format
<List> <Object> <id>10101</id> <displayName>Record 10101</displayName> </Object> </List>JSON Format
[ { id: 10101, displayName: "Record 10101" } ]CSV Format
id,displayName 10101,"Record 10101"
public void setExportTitleSeparatorChar(java.lang.String exportTitleSeparatorChar)
exportTitleSeparatorChar
- exportTitleSeparatorChar Default value is nullpublic java.lang.String getExportTitleSeparatorChar()
public void setExportValueFields(java.lang.Boolean exportValueFields)
DataBoundComponent.exportClientData
. Ordinarily, any fields that have a displayField
defined have the value of that
displayFIeld exported, rather than the underlying value in the valueField
. If you set this property, we export both
the underlying value and the displayField value.
exportValueFields
- exportValueFields Default value is nullpublic java.lang.Boolean getExportValueFields()
DataBoundComponent.exportClientData
. Ordinarily, any fields that have a displayField
defined have the value of that
displayFIeld exported, rather than the underlying value in the valueField
. If you set this property, we export both
the underlying value and the displayField value.
public void setLineBreakStyle(java.lang.String lineBreakStyle)
lineBreakStyle
- lineBreakStyle Default value is nullpublic java.lang.String getLineBreakStyle()
public void setOldValues(Record oldValues)
update
or remove
operation, the original values from the record that is being updated
or removed. oldValues
is automatically added to DSRequests submitted by DataBound Components. Available
on the server via DSRequest.getOldValues()
. The server can compare the oldValues
to the
most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
(NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").
In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
be shown for this case. For example, on detecting concurrent edit, the server may send back a special
dsResponse.status
code that the client application detects, offering the user a choice of proceeding with
the operation, discarding edits, or reconciling new and old values in a special interface.
oldValues
- oldValues Default value is nullpublic Record getOldValues()
update
or remove
operation, the original values from the record that is being updated
or removed. oldValues
is automatically added to DSRequests submitted by DataBound Components. Available
on the server via DSRequest.getOldValues()
. The server can compare the oldValues
to the
most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
(NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").
In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
be shown for this case. For example, on detecting concurrent edit, the server may send back a special
dsResponse.status
code that the client application detects, offering the user a choice of proceeding with
the operation, discarding edits, or reconciling new and old values in a special interface.
public void setOperationId(java.lang.String operationId)
DataBoundComponent
sends a DSRequest, the dsRequest.operationId
will be automatically picked up from the fetchOperation
, addOperation
, etc properties of the
DataBoundComponent. The operationId
serves as an identifier that you can use to create variations on
the 4 basic DataSource operations that are used by different components in different parts of your application. For
example, you may be using a standard fetch
operation in one part of your application, however on another
screen you want to perform a fetch
operation on the same DataSource but interpret search criteria
differently (eg full text search).
If you declare more than one OperationBinding
for the same operationType
, you can specify an
operationId
on the operationBinding
which
will cause that operationBinding to be used for dsRequests containing a matching operationId
. This allows
all the possible settings of an operationBinding
, including wsOperation
or DMI
settings, to be switched on a per-component or per-request basis.
For example, by setting the fetchOperation
on a particular ListGrid, you could cause it to invoke a
different server method via DMI, different dataURL
or
different web service operation
.
The
operationId
can also be directly received by the server in order to affect behavior. When using the Smart
GWT Server, operationId
can be accessed via dsRequest.getOperationId(). The RestDataSource
will also send the operationId
to the server as part of the request metadata
.
Note that if you manually invoke
a DataSource operation, you can also specify operationId
via the requestProperties
parameter.
Note that the operationId
has special significance in
terms of whether two DSRequests are considered equivalent for caching and synchronization purposes - see DsRequestEquivalence
.
operationId
- operationId Default value is nullOperations overview and related methods
public java.lang.String getOperationId()
DataBoundComponent
sends a DSRequest, the dsRequest.operationId
will be automatically picked up from the fetchOperation
, addOperation
, etc properties of the
DataBoundComponent. The operationId
serves as an identifier that you can use to create variations on
the 4 basic DataSource operations that are used by different components in different parts of your application. For
example, you may be using a standard fetch
operation in one part of your application, however on another
screen you want to perform a fetch
operation on the same DataSource but interpret search criteria
differently (eg full text search).
If you declare more than one OperationBinding
for the same operationType
, you can specify an
operationId
on the operationBinding
which
will cause that operationBinding to be used for dsRequests containing a matching operationId
. This allows
all the possible settings of an operationBinding
, including wsOperation
or DMI
settings, to be switched on a per-component or per-request basis.
For example, by setting the fetchOperation
on a particular ListGrid, you could cause it to invoke a
different server method via DMI, different dataURL
or
different web service operation
.
The
operationId
can also be directly received by the server in order to affect behavior. When using the Smart
GWT Server, operationId
can be accessed via dsRequest.getOperationId(). The RestDataSource
will also send the operationId
to the server as part of the request metadata
.
Note that if you manually invoke
a DataSource operation, you can also specify operationId
via the requestProperties
parameter.
Note that the operationId
has special significance in
terms of whether two DSRequests are considered equivalent for caching and synchronization purposes - see DsRequestEquivalence
.
Operations overview and related methods
public void setOperationType(DSOperationType operationType)
This property is generally
automatically populated, for example when calling fetchData()
on a DataSource or DataBound component the
operationType is automatically set to "fetch". Note that "custom" operations are never generated automatically, they
are always fired by your code.
operationType
- operationType Default value is nullpublic DSOperationType getOperationType()
This property is generally
automatically populated, for example when calling fetchData()
on a DataSource or DataBound component the
operationType is automatically set to "fetch". Note that "custom" operations are never generated automatically, they
are always fired by your code.
public java.lang.String getRequestId()
"clientCustom" dataProtocol
.
public void setStartRow(java.lang.Integer startRow)
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
startRow
- startRow Default value is nullpublic java.lang.Integer getStartRow()
Note that startRow and endRow are zero-based, inclusive at the beginning and exclusive at the end (like substring), so startRow: 0, endRow: 1 is a request for the first record.
public void setTextMatchStyle(TextMatchStyle textMatchStyle)
This setting is respected by the built-in SQLDataSource. Your custom DataSource implementation can interpret the search criteria passed into "fetch" operations in arbitrary ways; you can safely ignore this flag and use others of your own devising.
textMatchStyle
- textMatchStyle Default value is "exact"public TextMatchStyle getTextMatchStyle()
This setting is respected by the built-in SQLDataSource. Your custom DataSource implementation can interpret the search criteria passed into "fetch" operations in arbitrary ways; you can safely ignore this flag and use others of your own devising.
public void setUseFlatFields(java.lang.Boolean useFlatFields)
useFlatFields
is set for a request to be sent to a WSDL web service, when
creating the input XML message to send to the web service, properties in
request.data
will be used as the values for XML elements of the same
name, at
any level of nesting.
useFlatFields
allows you to ignore gratuitous XML message structure, such as
extra levels of nested elements, and provides some insulation against changes in the
required structure of the input message.
For example, given this input message:
<FindServices> <searchFor>search text</searchFor> <Options> <caseSensitive>false</caseSensitive> </Options> <IncludeInSearch> <serviceName>true</serviceName> <documentation>true</documentation> <keywords>true</keywords> </IncludeInSearch> </FindServices>If
useFlatFields
were not set, in order to fill out this message
correctly, request.data
would need to be:
{ searchFor: "search text", Options : { caseSensitive: false, }, IncludeInSearch : { serviceName: true, documentation : true, keywords : true } }However if useFlatFields were set,
request.data
could be just:
{ searchFor: "search text", caseSensitive: false, serviceName: true, documentation : true, keywords : true }
useFlatFields
is often set when the input data comes from a DynamicForm
to avoid the cumbersome and fragile process of mapping input fields to an XML structure.
useFlatFields
can also be set to cause all
dsRequests of a
particular type to useFlatFields
automatically.
For DataBoundComponents
,
component.useFlatFields
can be set use
"flattened"
binding to fields of a WSDL message or XML Schema.
Note that useFlatFields
is not generally recommended for use with XML 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 populated in the generated
XML message.
useFlatFields
- useFlatFields Default value is nullpublic java.lang.Boolean getUseFlatFields()
useFlatFields
is set for a request to be sent to a WSDL web service, when
creating the input XML message to send to the web service, properties in
request.data
will be used as the values for XML elements of the same
name, at
any level of nesting.
useFlatFields
allows you to ignore gratuitous XML message structure, such as
extra levels of nested elements, and provides some insulation against changes in the
required structure of the input message.
For example, given this input message:
<FindServices> <searchFor>search text</searchFor> <Options> <caseSensitive>false</caseSensitive> </Options> <IncludeInSearch> <serviceName>true</serviceName> <documentation>true</documentation> <keywords>true</keywords> </IncludeInSearch> </FindServices>If
useFlatFields
were not set, in order to fill out this message
correctly, request.data
would need to be:
{ searchFor: "search text", Options : { caseSensitive: false, }, IncludeInSearch : { serviceName: true, documentation : true, keywords : true } }However if useFlatFields were set,
request.data
could be just:
{ searchFor: "search text", caseSensitive: false, serviceName: true, documentation : true, keywords : true }
useFlatFields
is often set when the input data comes from a DynamicForm
to avoid the cumbersome and fragile process of mapping input fields to an XML structure.
useFlatFields
can also be set to cause all
dsRequests of a
particular type to useFlatFields
automatically.
For DataBoundComponents
,
component.useFlatFields
can be set use
"flattened"
binding to fields of a WSDL message or XML Schema.
Note that useFlatFields
is not generally recommended for use with XML 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 populated in the generated
XML message.
public void setUseFlatHeaderFields(java.lang.Boolean useFlatHeaderFields)
useFlatFields
XML serialization behavior to be
used for all soap headers in the request. See also headerData
.
useFlatHeaderFields
- useFlatHeaderFields Default value is nullpublic java.lang.Boolean getUseFlatHeaderFields()
useFlatFields
XML serialization behavior to be
used for all soap headers in the request. See also headerData
.
public void setValidationMode(ValidationMode validationMode)
validationMode
- validationMode Default value is "full"public ValidationMode getValidationMode()
public void setAttribute(java.lang.String property, java.lang.Object value)
DataClass.getAttributeAsObject(String)
in order to retrieve them.
These attributes are available for client-side use only - these attributes are not transmitted to the server.
Do not use setAttribute() to set any attribute for which there is a dedicated setter (do not setAttribute("data", data) for example).
If you are looking for a way to send additional data to the server, read
com.smartgwt.client.docs.DsRequestEquivalence,this overview
for the best approach.
setAttribute
in class DataClass
property
- the attribute namevalue
- the attribute value.public void setExportFields(java.lang.String[] exportFields)
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.
exportFields
- exportFields Default value is nullpublic java.lang.String[] getExportFields()
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.
public void setParams(java.util.Map params)
RPCRequest
This API is primarily used in combination with
useSimpleHttp
.
When contacting the Smart GWT
server, setting params
is an opportunity to send additional data aside from the main data
payload; this is useful for adding data to DataSource requests
which will be kept separate from the automatically sent DataSource data.
Note that in contrast to data
object, the data in rpcRequest.params
is not
serialized/deserialized by the Smart GWT server, and all values arrive on the server as String type (like HTTP
parameters always do).
The params value can also be a componentID or component instance that provides a
method getValues() that returns an Object literal. Smart GWT components DynamicForm
, ValuesManager
are two
such classes. Lastly, you may specify the ID of a native form element (retreivable via getElementById()) and the
params will be populated from there. If there is an error resolving your params directive, it will be logged to
the Developer Console.
Note: The params are submitted once per http transaction. If you are using RPCManager.startQueue()
to bundle multiple RPCRequests or DSRequests into a single HTTP
turnaround, the params from the various RPCRequests will be merged, with the later-queued transactions winning on
parameter name collisions. A warning will be logged in the Developer Console if multiple RPCRequests specified
params.
setParams
in class RPCRequest
params
- params Default value is nullpublic void setHeaderData(java.util.Map headerData)
SOAP headers typically contain request metadata such as a session id for authentication, and so dsRequest.headerData is typically populated by DataSource.transformRequest(), or, for data that applies to every request sent to the server, by WebService.getHeaderData().
headerData
- the header datapublic java.util.Map getHeaderData()
SOAP headers typically contain request metadata such as a session id for authentication, and so dsRequest.headerData is typically populated by DataSource.transformRequest(), or, for data that applies to every request sent to the server, by WebService.getHeaderData().
public ResultSet getResultSet()
This property can only be read. There is no meaning to setting this property yourself.
public void setSortBy(SortSpecifier[] sortSpecifiers)
sortSpecifiers
- Default value is nullpublic SortSpecifier[] getSortBy()
public void setOldValues(java.util.Map oldValues)
update
or remove
operation, the original values from the record that is being updated
or removed. oldValues
is automatically added to DSRequests submitted by DataBound Components. Available
on the server via DSRequest.getOldValues()
. The server can compare the oldValues
to the
most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
(NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").
In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
be shown for this case. For example, on detecting concurrent edit, the server may send back a special
dsResponse.status
code that the client application detects, offering the user a choice of proceeding with
the operation, discarding edits, or reconciling new and old values in a special interface.
oldValues
- oldValues Default value is nullpublic void setOldValues(JavaScriptObject oldValues)
update
or remove
operation, the original values from the record that is being updated
or removed. oldValues
is automatically added to DSRequests submitted by DataBound Components. Available
on the server via DSRequest.getOldValues()
. The server can compare the oldValues
to the
most recent stored values in order to detect that the user was looking at stale values when the user submitted changes
(NOTE: this means of detecting concurrent edit is sometimes called "optimistic concurrency" or "long transactions").
In applications where a policy of "last update wins" is not appropriate when updating certain fields, special UI can
be shown for this case. For example, on detecting concurrent edit, the server may send back a special
dsResponse.status
code that the client application detects, offering the user a choice of proceeding with
the operation, discarding edits, or reconciling new and old values in a special interface.
oldValues
- oldValues Default value is nullpublic Criteria getCriteria() throws java.lang.IllegalStateException
Note : This method should only be called during a FETCH operation
java.lang.IllegalStateException
- if called for a non-fetch operationpublic static DSRequest[] convertToDSRequestArray(JavaScriptObject nativeArray)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |