From Documentation

Jump to: navigation, search

Stop.png This article is out of date, please refer to zk-mvvm-book/8.0/syntax/data_binding/validator for more up to date information.



@validator( [EL-expression], [arbitraryKey]=[EL-expression] )


Target Attribute: any (except viewModel, validationMessages, form, and event attributes)

Purpose: It should be used with @bind , @load , @save . It applies a validator to validate data when saving to ViewModel.

The evaluation result of EL expression should be a Validator object. You can append arbitrary arguments in key-value pair with comma separated to pass it to the Validator object. Built-in Validator is referenced by a string literal as its name.

It's key-value pairs basically. You can write multiple key-value pairs with different key names.
An EL expression without key is set to a default key named "value" implicitly.
Due to each annotation has different functions, some annotations may ignore key-value pair expression other than default key, e.g.@id.
It could be any name, it's used as a key for parameter related Java annotation in a ViewModel.


Use built-in validator named beanValidator

<window id="win" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init(foo.MyViewModel)">
    <textbox value="@bind(vm.user.lastName) @validator('beanValidator')" />

Use custom validator

<datebox id="cdbox" value="@bind(fx.creationDate) @validator(vm.creationDateValidator)"/>

Version History

Last Update : 2015/5/28

Version Date Content
6.0.0 February 2012 The MVVM was introduced.

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.

You got stuck here?
Let us know how we can improve this page
For specific questions please use the forum