Spec-Zone .ru
спецификации, руководства, описания, API
|
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: ВЛОЖЕННЫЙ | ПОЛЕ | CONSTR | МЕТОД | ДЕТАЛЬ: ПОЛЕ | CONSTR | МЕТОД |
java.lang.Object javax.faces.component. UIComponent javax.faces.component. UIComponentBase javax.faces.component. UIOutput javax.faces.component.UIInput
public class UIInput
UIInput является a UIComponent
это представляет компонент что оба вывода дисплеев пользователю (как UIOutput
компоненты делают), и процессы запрашивают параметры по последующему запросу, который должен декодироваться. Нет никаких ограничений на тип данных локального значения, или объекта, на который ссылается значение обязательное выражение (если никто); однако, человек Renderer
s обычно введет ограничения для типа данных, которые они знают, как вывести на экран.
Во время Применять фазы Значений Запроса жизненного цикла обработки запросов декодируемое значение этого компонента, обычно но не обязательно Строки, должно быть сохранено - но еще не преобразовано - использование setSubmittedValue()
. Если компонент хочет указать, что никакое определенное значение не было представлено, он ничего не может или сделать, или установить представленное значение в null
.
По умолчанию, во время фазы Блоков проверки допустимости Процесса жизненного цикла обработки запросов, представленное значение будет преобразовано в безопасный с точки зрения типов объект, и, если проверка допустимости успешно выполнится, сохраненный как локальное использование значения setValue()
. Однако, если immediate
свойство устанавливается в true
, эта обработка произойдет вместо этого в конце Применять фазы Значений Запроса.
Во время Представлять фазы Ответа жизненного цикла обработки запросов преобразование для вывода происходит что касается UIOutput
.
Когда validate()
метод этого UIInput
обнаруживает, что изменение значения фактически произошло, и что все проверки допустимости успешно передали, оно поставит a в очередь ValueChangeEvent
. Позже, broadcast()
метод гарантирует, что это событие широковещательно передается всем заинтересованным слушателям. Это событие будет поставлено по умолчанию в фазе Блоков проверки допустимости Процесса, но может быть поставлено вместо этого во время, Применяют Значения Запроса если immediate
свойство устанавливается в true
. Если проверка допустимости перестала работать, реализация должна вызвать FacesContext#validationFailed
.
По умолчанию, rendererType
свойство должно быть установлено в"Text
". Это значение может быть изменено, вызывая setRendererType()
метод.
Полевая Сводка | |
---|---|
static java.lang.String |
COMPONENT_FAMILY
Стандартное компонентное семейство для этого компонента. |
static java.lang.String |
COMPONENT_TYPE
Стандартный компонент вводит для этого компонента. |
static java.lang.String |
CONVERSION_MESSAGE_ID
Идентификатор сообщения FacesMessage создаваться, если ошибка преобразования происходит, и ни автор страницы, ни ConverterException обеспечивает сообщение. |
static java.lang.String |
REQUIRED_MESSAGE_ID
Идентификатор сообщения FacesMessage создаваться, если необходимая проверка перестала работать. |
static java.lang.String |
UPDATE_MESSAGE_ID
Идентификатор сообщения FacesMessage чтобы быть созданным, если ошибка обновления модели происходит, и у выданного исключения нет никакого сообщения. |
static java.lang.String |
VALIDATE_EMPTY_FIELDS_PARAM_NAME
Имя параметра приложения, который указывает, как пустые значения должны быть обработаны относительно проверки допустимости. |
Поля, наследованные от 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 |
Сводка конструктора | |
---|---|
UIInput()
Создайте новое UIInput экземпляр со значениями свойств значения по умолчанию. |
Сводка метода | |
---|---|
void |
addValidator(Validator validator)
Добавьте a Validator экземпляр к набору связался с этим UIInput . |
void |
addValueChangeListener(ValueChangeListener listener)
Добавьте новое ValueChangeListener к группе слушателей, заинтересованных тем, чтобы быть уведомленным, когда ValueChangeEvent s происходят. |
void |
clearInitialState()
Для каждого из присоединенных объектов на этом экземпляре та реализация |
protected boolean |
compareValues(java.lang.Object previous, java.lang.Object value)
Возвратиться true если новое значение отличается от предыдущего значения. |
void |
decode(FacesContext context)
Декодируйте любое новое состояние этого UIComponent от запроса, содержавшегося в указанном FacesContext , и сохраните это состояние как необходимый. |
protected java.lang.Object |
getConvertedValue(FacesContext context, java.lang.Object newSubmittedValue)
Преобразуйте представленное значение в "локальное значение" соответствующего типа данных в случае необходимости. |
java.lang.String |
getConverterMessage()
Если был звонок setConverterMessage(java.lang.String) на этом экземпляре возвратите сообщение. |
java.lang.String |
getFamily()
Возвратите идентификатор компонентного семейства, которому принадлежит этот компонент. |
java.lang.String |
getRequiredMessage()
Если был звонок setRequiredMessage(java.lang.String) на этом экземпляре возвратите сообщение. |
java.lang.Object |
getSubmittedValue()
Возвратите submittedValue значение этого UIInput компонент. |
MethodBinding |
getValidator()
Осуждаемый. getValidators() должен использоваться вместо этого. |
java.lang.String |
getValidatorMessage()
Если был звонок setValidatorMessage(java.lang.String) на этом экземпляре возвратите сообщение. |
Блок проверки допустимости[] |
getValidators()
Возвратите набор зарегистрированных Validator s для этого UIInput экземпляр. |
MethodBinding |
getValueChangeListener()
Если EditableValueHolder.setValueChangeListener(javax.faces.el.MethodBinding) ранее не требовался этот экземпляр, этот метод должен возвратиться null . |
ValueChangeListener[] |
getValueChangeListeners()
Возвратите набор зарегистрированных ValueChangeListener s для этого UIInput экземпляр. |
static boolean |
isEmpty(java.lang.Object value)
|
boolean |
isImmediate()
Возвратите "непосредственное" состояние для этого компонента. |
boolean |
isLocalValueSet()
Возвратите "локальный набор значений" состояние для этого компонента. |
boolean |
isRequired()
Возвратите состояние "обязательного поля" для этого компонента. |
boolean |
isValid()
Возвратите флаг, указывающий, допустимо ли локальное значение этого компонента (никакая ошибка преобразования не произошла). |
void |
markInitialState()
В дополнение к принятым действиям UIOutput когда PartialStateHolder#markInitialState() вызывается, проверьте если любой из установленных Validator s являются PartialStateHolders и если так, вызывают PartialStateHolder.markInitialState() как соответствующий. |
void |
processDecodes(FacesContext context)
Специализированный декодируют поведение, к тому же обеспеченное суперклассом. |
void |
processUpdates(FacesContext context)
В дополнение к стандарту processUpdates поведение, наследованное от UIComponentBase , вызовы updateModel() . |
void |
processValidators(FacesContext context)
В дополнение к стандарту processValidators поведение, наследованное от UIComponentBase , вызовы validate() если immediate свойство является ложью (который является значением по умолчанию); если компонент недопустим впоследствии, вызовы FacesContext#renderResponse . |
void |
removeValidator(Validator validator)
Удалите a Validator экземпляр от набора связался с этим UIInput , если это было ранее связано. |
void |
removeValueChangeListener(ValueChangeListener listener)
Удалите существующее ValueChangeListener (если любой) от группы слушателей, заинтересованных тем, чтобы быть уведомленным, когда ValueChangeEvent s происходят. |
void |
resetValue()
Метод удобства, чтобы сбросить значение этого компонента к неинициализированному состоянию. |
void |
restoreState(FacesContext context, java.lang.Object state)
Выполните любую обработку, требуемую восстановить состояние от записей в Объекте состояния. |
java.lang.Object |
saveState(FacesContext context)
Получает состояние экземпляра как a Serializable Объект. |
void |
setConverterMessage(java.lang.String message)
Переопределите любого ValueExpression набор для "converterMessage" с литеральным параметром, обеспеченным для этого метода. |
void |
setImmediate(boolean immediate)
Установите "непосредственное" состояние для этого компонента. |
void |
setLocalValueSet(boolean localValueSet)
Устанавливает "локальный набор значений" состояние для этого компонента. |
void |
setRequired(boolean required)
Установите состояние "обязательного поля" для этого компонента. |
void |
setRequiredMessage(java.lang.String message)
Переопределите любого ValueExpression набор для "requiredMessage" с литеральным параметром, обеспеченным для этого метода. |
void |
setSubmittedValue(java.lang.Object submittedValue)
Установите submittedValue значение этого UIInput компонент. |
void |
setValid(boolean valid)
Установите флаг, указывающий, допустимо ли локальное значение этого компонента (никакая ошибка преобразования не произошла). |
void |
setValidator(MethodBinding validatorBinding)
Осуждаемый. Использовать addValidator(javax.faces.validator.Validator) вместо этого, получение параметра Validator создавая экземпляр MethodExpressionValidator . |
void |
setValidatorMessage(java.lang.String message)
Переопределите любого ValueExpression набор для "validatorMessage" с литеральным параметром, обеспеченным для этого метода. |
void |
setValue(java.lang.Object value)
Установите значение этого UIComponent (если любой). |
void |
setValueChangeListener(MethodBinding valueChangeListener)
Осуждаемый. Использовать addValueChangeListener(javax.faces.event.ValueChangeListener) вместо этого, получение параметра ValueChangeListener создавая экземпляр MethodExpressionValueChangeListener . |
void |
updateModel(FacesContext context)
Выполните следующий алгоритм, чтобы обновить данные модели, связанные с этим UIInput , если таковые вообще имеются, как соответствующий. |
void |
validate(FacesContext context)
Выполните следующий алгоритм, чтобы проверить локального значения этого UIInput . |
protected void |
validateValue(FacesContext context, java.lang.Object newValue)
Установите "допустимое" свойство согласно ниже алгоритма. |
Методы, наследованные от class javax.faces.component. UIOutput |
---|
getConverter, getLocalValue, getValue, setConverter |
Методы, наследованные от class java.lang. Объект |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Методы, наследованные от интерфейса javax.faces.component. ValueHolder |
---|
getConverter, getLocalValue, getValue, setConverter |
Полевая Деталь |
---|
public static final java.lang.String COMPONENT_TYPE
Стандартный компонент вводит для этого компонента.
public static final java.lang.String COMPONENT_FAMILY
Стандартное компонентное семейство для этого компонента.
public static final java.lang.String CONVERSION_MESSAGE_ID
Идентификатор сообщения FacesMessage
создаваться, если ошибка преобразования происходит, и ни автор страницы, ни ConverterException
обеспечивает сообщение.
public static final java.lang.String REQUIRED_MESSAGE_ID
Идентификатор сообщения FacesMessage
создаваться, если необходимая проверка перестала работать.
public static final java.lang.String UPDATE_MESSAGE_ID
Идентификатор сообщения FacesMessage
чтобы быть созданным, если ошибка обновления модели происходит, и у выданного исключения нет никакого сообщения.
public static final java.lang.String VALIDATE_EMPTY_FIELDS_PARAM_NAME
Имя параметра приложения, который указывает, как пустые значения должны быть обработаны относительно проверки допустимости. См. validateValue(javax.faces.context.FacesContext, java.lang.Object)
для допустимых значений и спецификации того, как они должны быть интерпретированы.
Деталь конструктора |
---|
public UIInput()
Создайте новое UIInput
экземпляр со значениями свойств значения по умолчанию.
Деталь метода |
---|
public java.lang.String getFamily()
UIComponent
Возвратите идентификатор компонентного семейства, которому принадлежит этот компонент. Этот идентификатор, в соединении со значением rendererType
свойство, может использоваться, чтобы выбрать соответствующее Renderer
для этого компонентного экземпляра.
getFamily
в class UIOutput
public java.lang.Object getSubmittedValue()
Возвратите submittedValue значение этого UIInput
компонент. Этот метод должен только использоваться decode()
и validate()
метод этого компонента, или его соответствие Renderer
.
getSubmittedValue
в интерфейсе EditableValueHolder
public void setSubmittedValue(java.lang.Object submittedValue)
Установите submittedValue значение этого UIInput
компонент. Этот метод должен только использоваться decode()
и validate()
метод этого компонента, или его соответствие Renderer
.
setSubmittedValue
в интерфейсе EditableValueHolder
submittedValue
- Новое представленное значениеpublic void setValue(java.lang.Object value)
ValueHolder
Установите значение этого UIComponent
(если любой).
setValue
в интерфейсе ValueHolder
setValue
в class UIOutput
value
- Новое локальное значениеpublic void resetValue()
Метод удобства, чтобы сбросить значение этого компонента к неинициализированному состоянию. Этот метод делает следующее:
Вызвать setValue(java.lang.Object)
передача null
.
Вызвать setSubmittedValue(java.lang.Object)
передача null
.
Вызвать setLocalValueSet(boolean)
передача false
.
Вызвать setValid(boolean)
передача true
.
По возврату из этого вызова, если у экземпляра был a ValueBinding
связанный с этим для свойства "значения", эта привязка оценивается когда UIOutput#getValue
вызывается. Иначе, null
возвращается из getValue()
.
resetValue
в интерфейсе EditableValueHolder
public boolean isLocalValueSet()
setValue()
автоматически сбросьте это свойство к true
.
isLocalValueSet
в интерфейсе EditableValueHolder
public void setLocalValueSet(boolean localValueSet)
setLocalValueSet
в интерфейсе EditableValueHolder
public boolean isRequired()
Возвратите состояние "обязательного поля" для этого компонента.
isRequired
в интерфейсе EditableValueHolder
public java.lang.String getRequiredMessage()
Если был звонок setRequiredMessage(java.lang.String)
на этом экземпляре возвратите сообщение. Иначе, вызвать UIComponent.getValueExpression(java.lang.String)
передавая ключ "requiredMessage", получите результат выражения, и возвратите это. Любой ELException
s брошенный во время звонка getValue()
должен быть обернут в a FacesException
и повторно брошенный.
public void setRequiredMessage(java.lang.String message)
Переопределите любого ValueExpression
набор для "requiredMessage" с литеральным параметром, обеспеченным для этого метода. Последующие звонки getRequiredMessage()
возвратит это значение;
message
- литеральное значение сообщения, которое будет выведено на экран в конечном счете, пользователь не предоставил значение, и каждый требуется.public java.lang.String getConverterMessage()
Если был звонок setConverterMessage(java.lang.String)
на этом экземпляре возвратите сообщение. Иначе, вызвать UIComponent.getValueExpression(java.lang.String)
передавая ключ "converterMessage", получите результат выражения, и возвратите это. Любой ELException
s брошенный во время звонка getValue()
должен быть обернут в a FacesException
и повторно брошенный.
public void setConverterMessage(java.lang.String message)
Переопределите любого ValueExpression
набор для "converterMessage" с литеральным параметром, обеспеченным для этого метода. Последующие звонки getConverterMessage()
возвратит это значение;
message
- литеральное значение сообщения, которое будет выведено на экран в конечном счете сбои преобразования.public java.lang.String getValidatorMessage()
Если был звонок setValidatorMessage(java.lang.String)
на этом экземпляре возвратите сообщение. Иначе, вызвать UIComponent.getValueExpression(java.lang.String)
передавая ключ "validatorMessage", получите результат выражения, и возвратите это. Любой ELException
s брошенный во время звонка getValue()
должен быть обернут в a FacesException
и повторно брошенный.
public void setValidatorMessage(java.lang.String message)
Переопределите любого ValueExpression
набор для "validatorMessage" с литеральным параметром, обеспеченным для этого метода. Последующие звонки getValidatorMessage()
возвратит это значение;
message
- литеральное значение сообщения, которое будет выведено на экран в конечном счете сбои проверки допустимости.public boolean isValid()
EditableValueHolder
Возвратите флаг, указывающий, допустимо ли локальное значение этого компонента (никакая ошибка преобразования не произошла).
isValid
в интерфейсе EditableValueHolder
public void setValid(boolean valid)
EditableValueHolder
Установите флаг, указывающий, допустимо ли локальное значение этого компонента (никакая ошибка преобразования не произошла).
setValid
в интерфейсе EditableValueHolder
valid
- Новый допустимый флагpublic void setRequired(boolean required)
Установите состояние "обязательного поля" для этого компонента.
setRequired
в интерфейсе EditableValueHolder
required
- Новое состояние "обязательного поля"public boolean isImmediate()
EditableValueHolder
Возвратите "непосредственное" состояние для этого компонента.
isImmediate
в интерфейсе EditableValueHolder
public void setImmediate(boolean immediate)
EditableValueHolder
Установите "непосредственное" состояние для этого компонента. Когда установлено в истину, значение компонента будет преобразовано и сразу проверено в Применять фазе Значений Запроса, и ValueChangeEvent
s будет поставлен в той фазе также. Значение по умолчанию для этого свойства должно быть false
.
setImmediate
в интерфейсе EditableValueHolder
immediate
- Новое "непосредственное" состояниеpublic MethodBinding getValidator()
getValidators()
должен использоваться вместо этого.
Возвратите a MethodBinding
указание на метод, который вызовут во время фазы Проверок допустимости Процесса жизненного цикла обработки запросов, чтобы проверить текущей стоимости этого компонента.
getValidator
в интерфейсе EditableValueHolder
public void setValidator(MethodBinding validatorBinding)
addValidator(javax.faces.validator.Validator)
вместо этого, получение параметра Validator
создавая экземпляр MethodExpressionValidator
.
Набор a MethodBinding
указание на метод, который вызовут во время фазы Проверок допустимости Процесса жизненного цикла обработки запросов, чтобы проверить текущей стоимости этого компонента.
Любой метод, на который ссылается такое выражение, должен быть общедоступным с типом возврата void
, и примите параметры типа FacesContext
, UIComponent
, и Object
.
setValidator
в интерфейсе EditableValueHolder
validatorBinding
- Новое MethodBinding
экземплярpublic MethodBinding getValueChangeListener()
EditableValueHolder
Если EditableValueHolder.setValueChangeListener(javax.faces.el.MethodBinding)
ранее не требовался этот экземпляр, этот метод должен возвратиться null
. Если бы это вызвали, то этот метод должен возвратить точное MethodBinding
экземпляр, к которому передали EditableValueHolder.setValueChangeListener(javax.faces.el.MethodBinding)
.
getValueChangeListener
в интерфейсе EditableValueHolder
public void setValueChangeListener(MethodBinding valueChangeListener)
addValueChangeListener(javax.faces.event.ValueChangeListener)
вместо этого, получение параметра ValueChangeListener
создавая экземпляр MethodExpressionValueChangeListener
.
Оберните параметр valueChangeMethod
в реализации ValueChangeListener
и сохраните это во внутренней структуре данных, которую это поддерживает EditableValueHolder.getValueChangeListeners()
метод, заботясь, чтобы перезаписать любой экземпляр, который был сохранен предыдущим звонком setValueChangeListener
.
Этот метод параметра вызовут во время Проверок допустимости Процесса или Применит фазы Значений Запроса (в зависимости от значения immediate
свойство).
Любой метод, на который ссылается такое выражение, должен быть общедоступным с типом возврата void
, и примите параметр типа ValueChangeEvent
.
setValueChangeListener
в интерфейсе EditableValueHolder
valueChangeListener
- Новый метод обязательный экземплярpublic void markInitialState()
В дополнение к принятым действиям UIOutput
когда PartialStateHolder#markInitialState()
вызывается, проверьте если любой из установленных Validator
s являются PartialStateHolders и если так, вызывают PartialStateHolder.markInitialState()
как соответствующий.
markInitialState
в интерфейсе PartialStateHolder
markInitialState
в class UIOutput
public void clearInitialState()
UIComponentBase
Для каждого из присоединенных объектов на этом экземпляре та реализация PartialStateHolder
, вызвать PartialStateHolder#clearInitialState
на присоединенном объекте.
clearInitialState
в интерфейсе PartialStateHolder
clearInitialState
в class UIOutput
public void processDecodes(FacesContext context)
Специализированный декодируют поведение, к тому же обеспеченное суперклассом. В дополнение к стандарту processDecodes
поведение, наследованное от UIComponentBase
, вызовы validate()
если immediate
свойство является истиной; если компонент недопустим впоследствии или a RuntimeException
бросается, вызовы FacesContext#renderResponse
.
processDecodes
в class UIComponentBase
context
- FacesContext
для запроса мы обрабатываем java.lang.NullPointerException
- если context
null
public void processValidators(FacesContext context)
В дополнение к стандарту processValidators
поведение, наследованное от UIComponentBase
, вызовы validate()
если immediate
свойство является ложью (который является значением по умолчанию); если компонент недопустим впоследствии, вызовы FacesContext#renderResponse
. Если a RuntimeException
бросается во время обработки проверки допустимости, вызовов FacesContext#renderResponse
и повторно бросьте исключение.
processValidators
в class UIComponentBase
context
- FacesContext
для запроса мы обрабатываем java.lang.NullPointerException
- если context
null
public void processUpdates(FacesContext context)
В дополнение к стандарту processUpdates
поведение, наследованное от UIComponentBase
, вызовы updateModel()
. Если компонент недопустим впоследствии, вызовы FacesContext#renderResponse
. Если a RuntimeException
бросается во время обработки обновления, вызовов FacesContext#renderResponse
и повторно бросьте исключение.
processUpdates
в class UIComponentBase
context
- FacesContext
для запроса мы обрабатываем java.lang.NullPointerException
- если context
null
public void decode(FacesContext context)
UIComponent
Декодируйте любое новое состояние этого UIComponent
от запроса, содержавшегося в указанном FacesContext
, и сохраните это состояние как необходимый.
Во время декодирования события могут ставиться в очередь для дальнейшей обработки (слушателями события, которые зарегистрировали интерес), вызывая queueEvent()
.
decode
в class UIComponentBase
context
- FacesContext
для запроса мы обрабатываем java.lang.NullPointerException
- если context
null
public void updateModel(FacesContext context)
Выполните следующий алгоритм, чтобы обновить данные модели, связанные с этим UIInput
, если таковые вообще имеются, как соответствующий.
valid
свойство этого компонента false
, не предпримите дальнейшие меры.localValueSet
свойство этого компонента false
, не предпримите дальнейшие меры.ValueExpression
для value
существует, не предпримите дальнейшие меры.setValue()
метод ValueExpression
обновить значение что ValueExpression
точки в.setValue()
метод возвращается успешно: UIInput
.localValueSet
свойство этого UIInput
ко лжи.setValue()
метод выдает Исключение: FacesMessage
с идентификатором UPDATE_MESSAGE_ID
. Создайте a UpdateModelException
, передача FacesMessage
и пойманное исключение конструктору. Создайте ExceptionQueuedEventContext
, передача FacesContext
, UpdateModelException
, этот компонентный экземпляр, и PhaseId#UPDATE_MODEL_VALUES
его конструктору. Вызвать FacesContext#getExceptionHandler
и затем вызовите ExceptionHandler#processEvent
, передача ExceptionQueuedEventContext
. valid
свойство этого UIInput
к false
.
context
- FacesContext
для запроса мы обрабатываем java.lang.NullPointerException
- если context
null
public void validate(FacesContext context)
Выполните следующий алгоритм, чтобы проверить локального значения этого UIInput
.
getSubmittedValue()
. Если это возвращается null
, выход без дальнейшей обработки. (Это указывает, что никакое значение не было представлено для этого компонента.)javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL
значение параметра контекста true
(игнорирование регистра), и getSubmittedValue()
возвращает нулевое длиной String
вызвать setSubmittedValue(java.lang.Object)
, передача null
как параметр и продолжают обрабатывать использование null
как ток представленное значение.getConvertedValue(javax.faces.context.FacesContext, java.lang.Object)
.addMessage()
метод на FacesContext
.valid
свойство на этом компоненте к false
validateValue(javax.faces.context.FacesContext, java.lang.Object)
.valid
свойство этого компонента все еще true
, получите предыдущее значение компонента (с getValue()
), сохраните новое локальное использование значения setValue()
, и сброс представленное значение к нулю. Если локальное значение отличается от предыдущего значения этого компонента, как определено звонком compareValues(java.lang.Object, java.lang.Object)
, огонь a ValueChangeEvent
быть широковещательно переданным всем заинтересованным слушателям.Реализация компонентов приложения UIInput
то желание выполнить проверку допустимости с логикой, встроенной в компонент, должно выполнить их собственные проверки правильности, и затем вызвать super.validate()
метод, чтобы выполнить обработку стандарта, описанную выше.
context
- FacesContext
для текущего запроса java.lang.NullPointerException
- если context
нульprotected java.lang.Object getConvertedValue(FacesContext context, java.lang.Object newSubmittedValue) throws ConverterException
Преобразуйте представленное значение в "локальное значение" соответствующего типа данных в случае необходимости. Используйте следующий алгоритм, чтобы сделать так:
Renderer
присутствует, вызвать getConvertedValue()
преобразовать представленное значение.Renderer
присутствует, и представленным значением является Строка, определите местоположение a Converter
следующим образом: getConverter()
возвращает ненуль Converter
, используйте тот экземпляр.value
существует, вызвать getType()
на этом. null
, предположите, что выходной тип String
и не выполните преобразование.Application.createConverter(Class)
определять местоположение любого зарегистрировалось Converter
способный к преобразованию значений данных указанного типа.Converter
экземпляр был расположен, вызовите getAsObject()
метод, чтобы выполнить преобразование. Если преобразование перестало работать, Converter
бросит a ConverterException
который объявляется как проверенное исключение на этом методе, и таким образом должен быть обработан вызывающей стороной.Этот метод может быть переопределен подклассами для более определенного поведения.
ConverterException
protected void validateValue(FacesContext context, java.lang.Object newValue)
Установите "допустимое" свойство согласно ниже алгоритма.
Если valid
свойство на этом компоненте все еще true
, и required
свойство также true
, гарантируйте, что локальное значение не пусто (где "освобождено" определяется как null
или Строка нулевая длиной). Если локальное значение пусто:
Ставьте в очередь соответствующее сообщение об ошибке, вызывая addMessage()
метод на FacesContext
экземпляр для текущего запроса. Если getRequiredMessage()
возвраты не -null
, используйте значение в качестве summary
и detail
в FacesMessage
это ставится в очередь на FacesContext
, иначе используйте сообщение для REQUIRED_MESSAGE_ID
.
valid
свойство на этом компоненте к false
.Вызывая ValidatorException#getFacesMessages
возвраты не -null
, каждое сообщение должно быть добавлено к FacesContext
. Иначе единственное сообщение, возвращенное из ValidatorException#getFacesMessage
должен быть добавлен.
Иначе, если valid
свойство на этом компоненте все еще true
, предпримите следующие меры, чтобы определить, должна ли проверка допустимости этого компонента продолжиться.
Если значение не пусто, проверка допустимости должна продолжиться.
Если значение пусто, но система была предписана проверить пустых полей, проверка допустимости должна продолжиться. Реализация должна получить init параметр Map
от ExternalContext
и осмотрите значение для ключа, данного значением символьной константы VALIDATE_EMPTY_FIELDS_PARAM_NAME
. Если нет никакого значения под тем ключом, используйте тот же самый ключ и взгляд в карте приложения от ExternalContext
. Если значение null
или равный строке“auto
”(без кавычек) принимают соответствующие меры, чтобы определить, присутствует ли Бобовая Проверка допустимости в среде выполнения. В противном случае проверка допустимости не должна продолжиться. Если так, проверка допустимости должна продолжиться. Если значение равно (игнорирование регистра) к“true
”(без кавычек) проверка допустимости должна продолжиться. Иначе, проверка допустимости не должна продолжиться.
Если вышеупомянутое определение указывает, что проверка допустимости должна продолжиться, вызовите validate()
метод каждого Validator
зарегистрированный для этого UIInput
, сопровождаемый методом, на который указывают validatorBinding
свойство (если любой). Если какой-либо из этих блоков проверки допустимости или метода бросает a ValidatorException
, поймайте исключение, добавьте его сообщение (если любой) к FacesContext
, и набор valid
свойство этого компонента ко лжи.
protected boolean compareValues(java.lang.Object previous, java.lang.Object value)
Возвратиться true
если новое значение отличается от предыдущего значения. Сначала сравните два значения, передавая значение к equals
метод на предыдущем параметре. Если тот метод возвращается true
, возвратиться true
. Если тот метод возвращается false
, и обе реализации параметров java.lang.Comparable
, сравните два значения, передавая значение к compareTo
метод на предыдущем параметре. Возвратиться true
если этот метод возвращается 0
, false
иначе.
previous
- старое значение этого компонента (если любой)value
- новое значение этого компонента (если любой)public static boolean isEmpty(java.lang.Object value)
public void addValidator(Validator validator)
Добавьте a Validator
экземпляр к набору связался с этим UIInput
.
addValidator
в интерфейсе EditableValueHolder
validator
- Validator
добавить java.lang.NullPointerException
- если validator
нульpublic Validator[] getValidators()
Возвратите набор зарегистрированных Validator
s для этого UIInput
экземпляр. Если нет никаких зарегистрированных блоков проверки допустимости, массив нулевой длиной возвращается.
getValidators
в интерфейсе EditableValueHolder
public void removeValidator(Validator validator)
Удалите a Validator
экземпляр от набора связался с этим UIInput
, если это было ранее связано. Иначе, ничего не сделайте.
removeValidator
в интерфейсе EditableValueHolder
validator
- Validator
удалитьpublic void addValueChangeListener(ValueChangeListener listener)
Добавьте новое ValueChangeListener
к группе слушателей, заинтересованных тем, чтобы быть уведомленным, когда ValueChangeEvent
s происходят.
addValueChangeListener
в интерфейсе EditableValueHolder
listener
- ValueChangeListener
быть добавленным java.lang.NullPointerException
- если listener
null
public ValueChangeListener[] getValueChangeListeners()
Возвратите набор зарегистрированных ValueChangeListener
s для этого UIInput
экземпляр. Если нет никаких зарегистрированных слушателей, массив нулевой длиной возвращается.
getValueChangeListeners
в интерфейсе EditableValueHolder
public void removeValueChangeListener(ValueChangeListener listener)
Удалите существующее ValueChangeListener
(если любой) от группы слушателей, заинтересованных тем, чтобы быть уведомленным, когда ValueChangeEvent
s происходят.
removeValueChangeListener
в интерфейсе EditableValueHolder
listener
- ValueChangeListener
быть удаленным java.lang.NullPointerException
- если listener
null
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 UIOutput
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 UIOutput
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: ВЛОЖЕННЫЙ | ПОЛЕ | CONSTR | МЕТОД | ДЕТАЛЬ: ПОЛЕ | CONSTR | МЕТОД |
Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается
Сгенерированный на 10-February-2011 12:41