Spec-Zone .ru
спецификации, руководства, описания, API
|
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: ВЛОЖЕННЫЙ | ПОЛЕ | CONSTR | МЕТОД | ДЕТАЛЬ: ПОЛЕ | CONSTR | МЕТОД |
java.lang.Object javax.faces.component. UIComponent javax.faces.component. UIComponentBase javax.faces.component.UIData
public class UIData
UIData является a UIComponent
это поддерживает привязку данных к набору объектов данных, представленных a DataModel
экземпляр, который является текущей стоимостью этого компонента непосредственно (обычно устанавливаемый через a ValueExpression
). Во время итеративной обработки по строкам данных в модели данных объект для текущей строки представляется как атрибут запроса под ключом, определенным var
свойство.
Только дочерние элементы типа UIColumn
должен быть обработан средствами рендеринга, связанными с этим компонентом.
По умолчанию, rendererType
свойство устанавливается в javax.faces.Table
. Это значение может быть изменено, вызывая setRendererType()
метод.
Полевая Сводка | |
---|---|
static java.lang.String |
COMPONENT_FAMILY
Стандартное компонентное семейство для этого компонента. |
static java.lang.String |
COMPONENT_TYPE
Стандартный компонент вводит для этого компонента. |
Поля, наследованные от class javax.faces.component. UIComponent |
---|
ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, HONOR_CURRENT_COMPONENT_ATTRIBUTES_PARAM_NAME, VIEW_LOCATION_KEY |
Поля, наследованные от интерфейса javax.faces.component. NamingContainer |
---|
SEPARATOR_CHAR |
Сводка конструктора | |
---|---|
UIData()
Создайте новое UIData экземпляр со значениями свойств значения по умолчанию. |
Сводка метода | |
---|---|
void |
broadcast(FacesEvent event)
Переопределите значение по умолчанию UIComponentBase#broadcast обработка, чтобы развернуть любого переносилась FacesEvent и сброс, который текущая строка индексирует перед событием, фактически широковещательно передается. |
java.lang.String |
createUniqueId(FacesContext context, java.lang.String seed)
Генерируйте идентификатор для компонента. |
void |
encodeBegin(FacesContext context)
В дополнение к поведению значения по умолчанию гарантируйте, что любое сохраненное состояние на строку для наших дочерних входных компонентов отбрасывается, если не необходимо повторно представить текущую страницу с ошибками. |
java.lang.String |
getClientId(FacesContext context)
Возвратите клиентский идентификатор для этого компонента, который включает текущую стоимость rowIndex свойство, если это не устанавливается в-1. |
protected DataModel |
getDataModel()
Возвратите внутреннее DataModel объект, представляющий объекты данных, которых мы выполним итерации в рендеринге этого компонента. |
java.lang.String |
getFamily()
Возвратите идентификатор компонентного семейства, которому принадлежит этот компонент. |
int |
getFirst()
Возвратите нулевой относительный номер строки первой строки, которая будет выведена на экран. |
UIComponent |
getFooter()
Возвратите фасет нижнего колонтитула этого компонента (если любой). |
UIComponent |
getHeader()
Возвратите фасет заголовка этого компонента (если любой). |
int |
getRowCount()
Возвратите число строк в базовой модели данных. |
java.lang.Object |
getRowData()
Возвратитесь объект данных, представляющий данные для в настоящий момент выбранной строки, индексируют, если любой. |
int |
getRowIndex()
Возвратитесь нулевой родственник индексируют в настоящий момент выбранной строки. |
int |
getRows()
Возвратите число строк, которые будут выведены на экран, или обнулите для всех остающихся строк в таблице. |
java.lang.Object |
getValue()
Возвратите значение UIData. |
java.lang.String |
getVar()
Возвратите атрибут контекста запроса, под которым объект данных для текущей строки будет представлен, выполняя итерации. |
boolean |
invokeOnComponent(FacesContext context, java.lang.String clientId, ContextCallback callback)
Поведение переопределения от UIComponentBase#invokeOnComponent обеспечить специальную заботу о расположении данных должным образом прежде, чем найти компонент и вызвать обратный вызов на это. |
boolean |
isRowAvailable()
Возвратите флаг, указывающий, есть ли rowData доступный в токе rowIndex . |
boolean |
isRowStatePreserved()
Возвратите значение |
void |
markInitialState()
Переопределите основной метод class, чтобы предпринять специальные меры, если метод вызывается когда |
void |
processDecodes(FacesContext context)
Переопределите значение по умолчанию UIComponentBase#processDecodes обработка, чтобы выполнить следующие шаги. |
void |
processUpdates(FacesContext context)
Переопределите значение по умолчанию UIComponentBase#processUpdates обработка, чтобы выполнить следующие шаги. |
void |
processValidators(FacesContext context)
Переопределите значение по умолчанию UIComponentBase#processValidators обработка, чтобы выполнить следующие шаги. |
void |
queueEvent(FacesEvent event)
Переопределите значение по умолчанию UIComponentBase#queueEvent обрабатывая, чтобы перенестись любые события с очередями в обертке так, чтобы мы могли сбросить текущую строку, индексируют в broadcast() . |
void |
restoreState(FacesContext context, java.lang.Object state)
Выполните любую обработку, требуемую восстановить состояние от записей в Объекте состояния. |
java.lang.Object |
saveState(FacesContext context)
Получает состояние экземпляра как a Serializable Объект. |
protected void |
setDataModel(DataModel dataModel)
Установите внутренний DataModel. |
void |
setFirst(int first)
Установите нулевой относительный номер строки первой строки, которая будет выведена на экран. |
void |
setFooter(UIComponent footer)
Установите фасет нижнего колонтитула этого компонента. |
void |
setHeader(UIComponent header)
Установите фасет заголовка этого компонента. |
void |
setRowIndex(int rowIndex)
Установите нулевого родственника, индексируют текущей строки, или-1, чтобы указать, что никакая строка в настоящий момент не выбирается, реализовывая следующий алгоритм. |
void |
setRows(int rows)
Определите номер строк, которые будут выведены на экран, или обнулите для всех остающихся строк в таблице. |
void |
setRowStatePreserved(boolean preserveComponentState)
Если это свойство устанавливается в |
void |
setValue(java.lang.Object value)
Установите значение UIData . |
void |
setValueBinding(java.lang.String name, ValueBinding binding)
Осуждаемый. Это было заменено setValueExpression(java.lang.String, javax.el.ValueExpression) . |
void |
setValueExpression(java.lang.String name, ValueExpression binding)
Установите ValueExpression используемый, чтобы вычислить значение для указанного атрибута или имени свойства, если любой. |
void |
setVar(java.lang.String var)
Установите атрибут контекста запроса под который объект данных для текущей строки wil быть представленными, выполняя итерации. |
boolean |
visitTree(VisitContext context, VisitCallback callback)
Переопределите поведение в |
Методы, наследованные от class java.lang. Объект |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Полевая Деталь |
---|
public static final java.lang.String COMPONENT_TYPE
Стандартный компонент вводит для этого компонента.
public static final java.lang.String COMPONENT_FAMILY
Стандартное компонентное семейство для этого компонента.
Деталь конструктора |
---|
public UIData()
Создайте новое UIData
экземпляр со значениями свойств значения по умолчанию.
Деталь метода |
---|
public java.lang.String getFamily()
UIComponent
Возвратите идентификатор компонентного семейства, которому принадлежит этот компонент. Этот идентификатор, в соединении со значением rendererType
свойство, может использоваться, чтобы выбрать соответствующее Renderer
для этого компонентного экземпляра.
getFamily
в class UIComponent
public int getFirst()
Возвратите нулевой относительный номер строки первой строки, которая будет выведена на экран.
public void setFirst(int first)
Установите нулевой относительный номер строки первой строки, которая будет выведена на экран.
first
- Новый первый номер строки IllegalArgumentException
- если first
отрицательноpublic UIComponent getFooter()
Возвратите фасет нижнего колонтитула этого компонента (если любой). Метод удобства для getFacet("footer")
.
public void setFooter(UIComponent footer)
Установите фасет нижнего колонтитула этого компонента. Метод удобства для getFacets().put("footer", footer)
.
footer
- новый фасет нижнего колонтитула java.lang.NullPointerException
- если footer
null
public UIComponent getHeader()
Возвратите фасет заголовка этого компонента (если любой). Метод удобства для getFacet("header")
.
public void setHeader(UIComponent header)
Установите фасет заголовка этого компонента. Метод удобства для getFacets().put("header", header)
.
header
- новый фасет заголовка java.lang.NullPointerException
- если header
null
public boolean isRowAvailable()
Возвратите флаг, указывающий, есть ли rowData
доступный в токе rowIndex
. Если нет wrappedData
доступно, возвратиться false
.
FacesException
- если ошибка происходит, получая доступность строкиpublic int getRowCount()
Возвратите число строк в базовой модели данных. Если число доступных строк неизвестно, возвратитесь-1.
FacesException
- если ошибка происходит, получая количество строкиpublic java.lang.Object getRowData()
Возвратитесь объект данных, представляющий данные для в настоящий момент выбранной строки, индексируют, если любой.
FacesException
- если ошибка происходит, получая данные строки IllegalArgumentException
- если теперь данные строки доступны в в настоящий момент указанной строке, индексируютpublic int getRowIndex()
Возвратитесь нулевой родственник индексируют в настоящий момент выбранной строки. Если мы в настоящий момент не располагаемся на строку, возвратитесь-1. Это свойство не включается для значения обязательные выражения.
FacesException
- если ошибка происходит, получая строку, индексируютpublic void setRowIndex(int rowIndex)
Установите нулевого родственника, индексируют текущей строки, или-1, чтобы указать, что никакая строка в настоящий момент не выбирается, реализовывая следующий алгоритм. Возможно установить строку, индексируют в значении, для которого базовый сбор данных не содержит данных строки. Поэтому, вызывающие стороны могут использовать isRowAvailable()
метод, чтобы обнаружить, будут ли данные строки доступны для использования getRowData()
метод.
Чтобы поддерживать переходное состояние среди потомков, пожалуйста, консультируйтесь со спецификацией для setRowStatePreserved(boolean)
, который детализирует требования для setRowIndex()
когда rowStatePreserved
Свойство JavaBeans устанавливается в true
.
DataModel
связанный с этим UIData
экземпляр.rowIndex
значение-1: var
свойство не является нулем, удалите соответствующий атрибут контекста запроса (если любой).rowIndex
значение не-1: var
свойство не является нулем, вызвать getRowData()
и представьте получающийся объект данных как атрибут контекста запроса, ключ которого var
значение свойства.Сохранить информацию о текущем состоянии для всех порожденных компонентов, UIData
должен поддержать информацию на строку для каждого потомка следующим образом:
EditableValueHolder
, сохраните состояние localValue
свойство.EditableValueHolder
, сохраните состояние localValueSet
свойство.EditableValueHolder
, сохраните состояние valid
свойство.EditableValueHolder
, сохраните состояние submittedValue
свойство.Восстановить информацию о текущем состоянии для всех порожденных компонентов, UIData
должен сослаться на его ранее хранившую информацию для тока rowIndex
и вызовите методы set для каждого потомка следующим образом:
EditableValueHolder
, восстановите value
свойство.EditableValueHolder
, восстановите состояние localValueSet
свойство.EditableValueHolder
, восстановите состояние valid
свойство.EditableValueHolder
, восстановите состояние submittedValue
свойство.
rowIndex
- Новая строка индексирует значение, или-1 ни для какой связанной строки FacesException
- если ошибка происходит, устанавливая строку, индексируют IllegalArgumentException
- если rowIndex
меньше чем-1public int getRows()
Возвратите число строк, которые будут выведены на экран, или обнулите для всех остающихся строк в таблице. Значение по умолчанию этого свойства является нулем.
public void setRows(int rows)
Определите номер строк, которые будут выведены на экран, или обнулите для всех остающихся строк в таблице.
rows
- Новое число строк IllegalArgumentException
- если rows
отрицательноpublic java.lang.String getVar()
Возвратите атрибут контекста запроса, под которым объект данных для текущей строки будет представлен, выполняя итерации. Это свойство не включается для значения обязательные выражения.
public void setVar(java.lang.String var)
Установите атрибут контекста запроса под который объект данных для текущей строки wil быть представленными, выполняя итерации.
var
- Новое название атрибута контекста запросаpublic boolean isRowStatePreserved()
Возвратите значение rowStatePreserved
Свойство JavaBeans. См. setRowStatePreserved(boolean)
.
public void setRowStatePreserved(boolean preserveComponentState)
Если это свойство устанавливается в true
, UIData
должен предпринять шаги, чтобы гарантировать, что модификации его выполненным с помощью итераций дочерним элементам будут сохранены на основе на строку. Это позволяет приложениям изменять компонентные свойства, такие как стиль-class, для определенной строки, вместо того, чтобы иметь такие модификации применяются ко всем строкам.
Выполнять это, UIData
должен вызвать StateHolder#saveState
и TransientStateHolder#saveTransientState
на его дочерних элементах, чтобы получить их состояние при выходе из каждой строки. Повторно входя в строку, StateHolder#restoreState
и TransientStateHolder#restoreTransientState
должен быть вызван, чтобы повторно инициализировать дочерние элементы к корректному состоянию для новой строки. Все это действие должно иметь место во время обработки setRowIndex(int)
.
Пользователи должны рассмотреть активирование этой опции для случаев, где необходимо изменить свойства UIData
's дочерние элементы специфичным для строки способом. Отметьте, однако, что сохранение/восстановление состояния на уровне строки действительно добавляет издержки. Также, эта функция должна быть использована рассудительно.
public java.lang.Object getValue()
Возвратите значение UIData. Это значение должно или быть иметь тип DataModel
, или тип, который может быть адаптирован в a DataModel
. UIData
автоматически адаптирует следующие типы:
java.util.List
java.sql.ResultSet
javax.servlet.jsp.jstl.sql.Result
Все другие типы будут адаптированы, используя ScalarDataModel
class, который обработает объект как единственную строку данных.
public void setValue(java.lang.Object value)
Установите значение UIData
. Это значение должно или быть иметь тип DataModel
, или тип, который может быть адаптирован в a DataModel
.
value
- новое значениеpublic void setValueBinding(java.lang.String name, ValueBinding binding)
setValueExpression(java.lang.String, javax.el.ValueExpression)
.
Если "имя" - что-то другое, чем "значение", "var", или "rowIndex", полагается на преобразование суперкласса из ValueBinding
к ValueExpression
.
setValueBinding
в class UIComponentBase
name
- Имя атрибута или свойства, для которого можно установить a ValueBinding
binding
- ValueBinding
установить, или null
удалить любого в настоящий момент набор ValueBinding
IllegalArgumentException
- если name
один из id
, parent
, var
, или rowIndex
java.lang.NullPointerException
- если name
null
public void setValueExpression(java.lang.String name, ValueExpression binding)
Установите ValueExpression
используемый, чтобы вычислить значение для указанного атрибута или имени свойства, если любой. Кроме того, если a ValueExpression
устанавливается для value
свойство, удалите любого синтезируемого DataModel
для данных, ранее связанных с этим компонентом.
setValueExpression
в class UIComponent
name
- Имя атрибута или свойства, для которого можно установить a ValueExpression
binding
- ValueExpression
установить, или null
удалить любого в настоящий момент набор ValueExpression
IllegalArgumentException
- если name
один из id
, parent
, var
, или rowIndex
java.lang.NullPointerException
- если name
null
public java.lang.String getClientId(FacesContext context)
Возвратите клиентский идентификатор для этого компонента, который включает текущую стоимость rowIndex
свойство, если это не устанавливается в-1. Это подразумевает это множественные вызовы getClientId()
может возвратить различные результаты, но гарантирует, что дочерние компоненты могут самостоятельно генерировать специфичные для строки клиентские идентификаторы (так как UIData
a NamingContainer
).
getClientId
в class UIComponentBase
context
- FacesContext
для текущего запроса java.lang.NullPointerException
- если context
null
public boolean invokeOnComponent(FacesContext context, java.lang.String clientId, ContextCallback callback) throws FacesException
Поведение переопределения от UIComponentBase#invokeOnComponent
обеспечить специальную заботу о расположении данных должным образом прежде, чем найти компонент и вызвать обратный вызов на это. Если параметр clientId
равно this.getClientId()
просто вызовите contextCallback
, передача context
параметр и это как параметры, и возврат true.
Если параметр clientId
не равно this.getClientId()
, осмотрите каждый из фасетных дочерних элементов этого UIData
экземпляр и для каждого, сравните clientId
с параметром clientId
. Если есть соответствие, вызовите contextCallback
, передача context
параметр и это как параметры, и возврат true
. Иначе, попытайтесь извлечь rowIndex из clientId
. Например, если параметр clientId
был form:data:3:customerHeader
rowIndex был бы 3
. Позвольте этому значению быть вызванным newIndex
. Ток rowIndex этого экземпляра должен быть сохранен в стороне и восстановлен прежде, чем возвратиться во всех случаях, независимо от результата поиска или если какие-либо исключения выдаются в процессе.
Реализация этого метода никогда не должна возвращаться true
устанавливая rowIndex этого экземпляра, чтобы быть равным newIndex
причины этот экземпляр, чтобы возвратиться false
от isRowAvailable()
.
invokeOnComponent
в class UIComponentBase
context
- FacesContext
для текущего запросаclientId
- клиентский идентификатор компонента, который передадут к обратному вызову параметра.callback
- реализация интерфейса Обратного вызова. true
если компонент с данным clientId
находится, метод обратного вызова был успешно вызван, передавая тот компонент как параметр, и никакое Исключение не было выдано. Возвраты false
если никакой компонент с данным clientId
находится. java.lang.NullPointerException
- если каким-либо из параметров является нуль FacesException
- если Обратный вызов параметра выдает Исключение, он обертывается в a FacesException
и повторно брошенный. Также броски FacesException
если какое-либо исключение выдается, получая rowIndex из параметра clientId
.public void queueEvent(FacesEvent event)
Переопределите значение по умолчанию UIComponentBase#queueEvent
обрабатывая, чтобы перенестись любые события с очередями в обертке так, чтобы мы могли сбросить текущую строку, индексируют в broadcast()
.
queueEvent
в class UIComponentBase
event
- FacesEvent
быть поставленным в очередь IllegalStateException
- если этот компонент не является потомком a UIViewRoot
java.lang.NullPointerException
- если event
null
public void broadcast(FacesEvent event) throws AbortProcessingException
Переопределите значение по умолчанию UIComponentBase#broadcast
обработка, чтобы развернуть любого переносилась FacesEvent
и сброс, который текущая строка индексирует перед событием, фактически широковещательно передается. Для событий, которые мы не обертывали (в queueEvent()
), обработка значения по умолчанию произойдет.
broadcast
в class UIComponentBase
event
- FacesEvent
быть широковещательно переданным AbortProcessingException
- Сигнализируйте реализацию Поверхностей JavaServer, что никакая дальнейшая обработка на текущем событии не должна быть выполнена IllegalArgumentException
- если реализация class этого FacesEvent
не поддерживается этим компонентом java.lang.NullPointerException
- если event
null
public void encodeBegin(FacesContext context) throws java.io.IOException
В дополнение к поведению значения по умолчанию гарантируйте, что любое сохраненное состояние на строку для наших дочерних входных компонентов отбрасывается, если не необходимо повторно представить текущую страницу с ошибками.
encodeBegin
в class UIComponentBase
context
- FacesContext для текущего запроса java.io.IOException
- если ввод/ошибка на выходе происходит, представляя java.lang.NullPointerException
- если context
null
public void processDecodes(FacesContext context)
Переопределите значение по умолчанию UIComponentBase#processDecodes
обработка, чтобы выполнить следующие шаги.
rendered
свойство этого UIComponent
false
, пропуск, далее обрабатывающий.rowIndex
к-1.processDecodes()
метод всех фасетов этого UIData
, в порядке, определенном звонком getFacets().keySet().iterator()
.processDecodes()
метод всех фасетов UIColumn
дочерние элементы этого UIData
.first
и rows
свойства), выполняя следующую обработку для каждой строки: rowIndex
к соответствующему значению для этой строки.isRowAvailable()
возвраты true
, выполните итерации по дочерним компонентам каждого UIColumn
дочерний элемент этого UIData
компонент, вызывая processDecodes()
метод для каждого такого дочернего элемента.rowIndex
к-1.decode()
метод этого компонента.RuntimeException
бросается во время обработки декодирования, вызвать FacesContext#renderResponse
и повторно бросьте исключение.
processDecodes
в class UIComponentBase
context
- FacesContext
для текущего запроса java.lang.NullPointerException
- если context
null
public void processValidators(FacesContext context)
Переопределите значение по умолчанию UIComponentBase#processValidators
обработка, чтобы выполнить следующие шаги.
rendered
свойство этого UIComponent
false
, пропуск, далее обрабатывающий.rowIndex
к-1.processValidators()
метод всех фасетов этого UIData
, в порядке, определенном звонком getFacets().keySet().iterator()
.processValidators()
метод всех фасетов UIColumn
дочерние элементы этого UIData
.first
и rows
свойства), выполняя следующую обработку для каждой строки: rowIndex
к соответствующему значению для этой строки.isRowAvailable()
возвраты true
, выполните итерации по дочерним компонентам каждого UIColumn
дочерний элемент этого UIData
компонент, вызывая processValidators()
метод для каждого такого дочернего элемента.rowIndex
к-1.
processValidators
в class UIComponentBase
context
- FacesContext
для текущего запроса java.lang.NullPointerException
- если context
null
public void processUpdates(FacesContext context)
Переопределите значение по умолчанию UIComponentBase#processUpdates
обработка, чтобы выполнить следующие шаги.
rendered
свойство этого UIComponent
false
, пропуск, далее обрабатывающий.rowIndex
к-1.processUpdates()
метод всех фасетов этого UIData
, в порядке, определенном звонком getFacets().keySet().iterator()
.processUpdates()
метод всех фасетов UIColumn
дочерние элементы этого UIData
.first
и rows
свойства), выполняя следующую обработку для каждой строки: rowIndex
к соответствующему значению для этой строки.isRowAvailable()
возвраты true
, выполните итерации по дочерним компонентам каждого UIColumn
дочерний элемент этого UIData
компонент, вызывая processUpdates()
метод для каждого такого дочернего элемента.rowIndex
к-1.
processUpdates
в class UIComponentBase
context
- FacesContext
для текущего запроса java.lang.NullPointerException
- если context
null
public java.lang.String createUniqueId(FacesContext context, java.lang.String seed)
UniqueIdVendor
Генерируйте идентификатор для компонента. Идентификатор будет снабжен префиксом UNIQUE_ID_PREFIX, и будет уникален в пределах этого компонентного контейнера. Дополнительно, уникальное значение семени может быть предоставлено компонентными создателями, которые должны быть включены в сгенерированный уникальный идентификатор.
createUniqueId
в интерфейсе UniqueIdVendor
context
- FacesContextseed
- дополнительное значение семени - например, основанный на позиции компонента в VDL-шаблоне public boolean visitTree(VisitContext context, VisitCallback callback)
Переопределите поведение в UIComponent#visitTree
обработать итерацию правильно.
Если UIComponent#isVisitable
метод этого экземпляра возвраты false
, не предпримите меры и возврат.
Вызвать UIComponent#pushComponentToEL
и вызовите обратный вызов посещения на это UIData
экземпляр как описано в UIComponent#visitTree
. Позвольте результату invoctaion быть visitResult. Если visitResult VisitResult#COMPLETE
, не предпримите дальнейшие меры и возврат true
. Иначе, определите, должны ли мы навестить наши дочерние элементы. Вызовы реализации по умолчанию VisitContext#getSubtreeIdsToVisit
передача this
как параметр. Если результат того вызова непуст, позвольте doVisitChildren быть true
. Если doVisitChildren true
и visitResult VisitResult#ACCEPT
, предпримите следующие меры.
Если у этого компонента есть фасеты, вызвать UIComponent#getFacets
на этом экземпляре и вызывают values()
метод. Для каждого UIComponent
в возвращенном Map
, вызвать UIComponent#visitTree
.
Если у этого компонента есть дочерние элементы для каждого UIColumn
дочерний элемент:
Вызвать VisitContext#invokeVisitCallback
на этом UIColumn
экземпляр. Если такой вызов возвращается true
, оконечное посещение и возврат true
от этого метода.
Если дочерний элемент UIColumn
имеет фасеты, вызвать UIComponent#visitTree
на каждом.
Не предпримите меры на не -UIColumn
дочерние элементы.
Сохраните в стороне результат звонка getRowIndex()
.
Для каждого дочернего компонента этого UIData
это - также экземпляр UIColumn
,
Выполните итерации по строкам.
Позвольте rowsToProcess быть возвратом из getRows()
.
Позвольте rowIndex быть возвратом из getFirst()
- 1.
В то время как число обработанных строк является меньше чем rowsToProcess, предпримите следующие меры.
Вызвать setRowIndex(int)
, передача текущей строки индексирует.
Если isRowAvailable()
возвраты false
, не предпримите дальнейшие меры и возврат false
.
> Вызвать UIComponent#visitTree
на каждом из дочерних элементов этого UIColumn
экземпляр.
Вызвать UIComponent.popComponentFromEL(javax.faces.context.FacesContext)
и восстановите сохраненную строку, индексируют со звонком setRowIndex(int)
.
Возвратиться false
позволить посещению продолжаться.
visitTree
в class UIComponent
context
- VisitContext
это обеспечивает контекст для того, чтобы он выполнил посещение.callback
- обратный вызов, который будет вызван для каждого узла, с которым встречаются в посещении. true
указать, что древовидное посещение полно (eg. все компоненты, которые нужно посетить, были посещены). Это приводит к древовидному посещению, закорачиваемому так, что, больше компонентов не посещают.
java.lang.NullPointerException
- если какой-либо из параметров null
.VisitContext.invokeVisitCallback()
public void markInitialState()
Переопределите основной метод class, чтобы предпринять специальные меры, если метод вызывается когда StateManager#IS_BUILDING_INITIAL_STATE
истина и rowStatePreserved
Свойство JavaBeans для этого экземпляра true
.
Дополнительные предпринятые меры должны пересечь потомков и сохранить их состояние без отношения к любому определенному значению строки.
markInitialState
в интерфейсе PartialStateHolder
markInitialState
в class UIComponentBase
public void restoreState(FacesContext context, java.lang.Object state)
StateHolder
Выполните любую обработку, требуемую восстановить состояние от записей в Объекте состояния.
Если у class, который реализует этот интерфейс, есть ссылки на экземпляры, которые также реализуют StateHolder (такой как a UIComponent
с обработчиками событий, блоками проверки допустимости, и т.д.), этот метод должен вызвать StateHolder.restoreState(javax.faces.context.FacesContext, java.lang.Object)
метод на всех тех экземплярах также.
Если state
параметр null
, не предпримите меры и возврат.
restoreState
в интерфейсе StateHolder
restoreState
в class UIComponentBase
public java.lang.Object saveState(FacesContext context)
StateHolder
Получает состояние экземпляра как a Serializable
Объект.
Если у class, который реализует этот интерфейс, есть ссылки на экземпляры, которые реализуют StateHolder (такой как a UIComponent
с обработчиками событий, блоками проверки допустимости, и т.д.), этот метод должен вызвать StateHolder.saveState(javax.faces.context.FacesContext)
метод на всех тех экземплярах также. Этот метод не должен сохранить состояние дочерних элементов и фасетов. Это делается через StateManager
Этот метод не должен изменить состояние объекта реализации. Другими словами, после выполнения этого кода:
Object state = component.saveState(facesContext);
component
должно быть то же самое как прежде, чем выполнить это.
Возврат из этого метода должен быть Serializable
saveState
в интерфейсе StateHolder
saveState
в class UIComponentBase
protected DataModel getDataModel()
Возвратите внутреннее DataModel
объект, представляющий объекты данных, которых мы выполним итерации в рендеринге этого компонента.
Если модель кэшировалась предыдущим звонком setDataModel(javax.faces.model.DataModel)
, возвратите это. Иначе вызовите getValue()
. Если результатом является нуль, создайте пустое ListDataModel
и возвратите это. Если результатом является экземпляр DataModel
, возвратите это. Иначе, адаптируйте результат как описано в getValue()
и возвратите это.
protected void setDataModel(DataModel dataModel)
Установите внутренний DataModel. Это UIData
экземпляр должен использовать данный DataModel
как его внутреннее представление значения с этого времени до следующего звонка setDataModel
. Если данный DataModel
null
, внутреннее DataModel
должен быть сброшен способом так, чтобы следующий звонок getDataModel()
вызывает ленивый instantion недавно обновленный DataModel
.
Подклассы могли бы вызвать этот метод, если они любой хочет восстановить внутреннее DataModel
во время фазы Представления Восстановления или если они хотят явно обновить ток DataModel
для Представлять фазы Ответа.
dataModel
- новое DataModel
или null
заставить модель быть обновленной.
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: ВЛОЖЕННЫЙ | ПОЛЕ | CONSTR | МЕТОД | ДЕТАЛЬ: ПОЛЕ | CONSTR | МЕТОД |
Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается
Сгенерированный на 10-February-2011 12:41