T
- BigDecimal, BigInteger, Long, Integer and String that represents BigDecimal value with current locale@Component(value="cuba_DigitsValidator") @Scope(value="prototype") public class DigitsValidator<T> extends AbstractValidator<T>
For error message it uses Groovy string and it is possible to use '$value', '$integer' and '$fraction' keys for formatted output.
In order to provide your own implementation globally, create a subclass and register it in web-spring.xml
,
for example:
<bean id="cuba_DigitsValidator" class="com.haulmont.cuba.gui.components.validation.DigitsValidator" scope="prototype"/>Use
BeanLocator
when creating the validator programmatically.Modifier and Type | Field and Description |
---|---|
protected int |
fraction |
protected int |
integer |
static java.lang.String |
NAME |
datatypeRegistry, message, messages, userSessionSource
Constructor and Description |
---|
DigitsValidator(int integer,
int fraction)
Constructor with default error message.
|
DigitsValidator(int integer,
int fraction,
java.lang.String message)
Constructor with custom error message.
|
Modifier and Type | Method and Description |
---|---|
void |
accept(T value) |
protected void |
fireValidationException(T value) |
int |
getFraction() |
int |
getIntger() |
protected void |
setDatatypeRegistry(DatatypeRegistry datatypeRegistry) |
void |
setFraction(int fraction)
Sets maximum value inclusive.
|
void |
setIntger(int integer)
Sets maximum value inclusive.
|
protected void |
setMessages(Messages messages) |
protected void |
setUserSessionSource(UserSessionSource userSessionSource) |
formatValue, getMessage, getTemplateErrorMessage, setMessage
public static final java.lang.String NAME
protected int integer
protected int fraction
public DigitsValidator(int integer, int fraction)
integer
- maximum number of integral digitsfraction
- maximum number of fractional digitspublic DigitsValidator(int integer, int fraction, java.lang.String message)
Example: "Value '$value' is out of bounds ($integer digits is expected in integer part and $fraction in fractional part)".
integer
- maximum number of integral digitsfraction
- maximum number of fractional digitsmessage
- error message@Inject protected void setDatatypeRegistry(DatatypeRegistry datatypeRegistry)
@Inject protected void setUserSessionSource(UserSessionSource userSessionSource)
@Inject protected void setMessages(Messages messages)
public void setIntger(int integer)
integer
- maximum number of integral digitspublic void setFraction(int fraction)
fraction
- maximum number of fractional digitspublic int getIntger()
public int getFraction()
public void accept(T value) throws ValidationException
ValidationException
protected void fireValidationException(T value)