Binding data elements
XPages controls can be bound to elements of data sources.
Once a Domino® Document
data source is defined, you have access to its items. You can bind
these items to controls. This means that data entered into the control
by the user is assigned to the bound item when the document is saved.
Likewise when a document is retrieved, the value of an item is assigned
to the bound control. In Source mode, a bound item takes the form
of an EL expression starting with the name of the data source. Here
an input box is bound to the
subject
item of the document1
data
source.<xp:inputText value="#{document1.subject}" id="inputText1"></xp:inputText>
Controls
can also be bound to global variables and the return values of scripts.Data palette
Data sources and their constituent items can be seen on the data palette ( ). You can drag and drop data items onto the XPage. If a control already exists, dragging a data item into it binds the control to the item. For example, if you have the following unbound edit box:<xp:inputText id="inputText1"></xp:inputText>
Dragging
in the subject
item from document1
yields:<xp:inputText id="inputText1" value="#{document1.subject}"></xp:inputText>
If
you drag a data item onto the XPage proper (outside all controls),
an appropriate context is created. For example, dragging the subject
item
from document1
onto the XPage proper yields:<xp:table>
<xp:tr> <xp:td>
<xp:label value="Subject:" id="subject_Label1" for="subject1"></xp:label>
</xp:td><xp:td>
<xp:inputText value="#{document1.subject}" id="subject1"></xp:inputText>
</xp:td></xp:tr>
</xp:table>
An input box is set up in column 2 of a
table with a label in column 1.The data palette contains a Select
Controls dialog box toggle switch in the upper left. By
default it is disabled. If you enable it (by clicking it), you are
presented with a dialog when you drag a data item onto the XPage.
The dialog permits you to:
- Change the type of control.
- Add a Button control of type Submit.
- Add a Display Errors control
Data tab
A binding mechanism exists on the Data tab for controls that can be bound to Domino® document items. A dropdown menu allows you to select or create the data source. Another dropdown menu allows you to select the item. Elsewhere you can verify the display type and format, and provide a default value.In
the following example, focus is on an Input Box control. The user
selects the Data tab, selects document1 and number from
the dropdown menus, verifies that the display type is Number,
and provides a default value.
<xp:inputText id="inputText2" value="#{document1.number}" defaultValue="1">
<xp:this.converter>
<xp:convertNumber type="number"></xp:convertNumber>
</xp:this.converter>
</xp:inputText>