/*
- * Copyright (C) 2016 Roland Haeder
+ * Copyright (C) 2016, 2017 Roland Häder
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* A general string validation class. You normally want to inherit from this
* class for many form fields, e.g. surname, street name, city name and such.
* <p>
- * @author Roland Haeder<roland@mxchange.org>
+ * @author Roland Häder<roland@mxchange.org>
*/
public abstract class BaseStringValidator extends BaseObjectValidator {
private static final long serialVersionUID = 15_484_578_781_760_287L;
@Override
- protected void preValidate (final FacesContext context, final UIComponent component, final Object value, final String[] requiredFields, boolean allowNull) throws ValidatorException {
+ protected void preValidate (final FacesContext context, final UIComponent component, final Object value, final String[] requiredFields, Boolean allowNull) throws ValidatorException {
// Trace message
- //this.getLogger().logTrace(MessageFormat.format("preValidate: context={0},component={1},value={2},fields={3} - CALLED!", context, component, value, Arrays.toString(requiredFields))); //NOI18N
+ //* NOISY-DEBUG: */ System.out.println(MessageFormat.format("preValidate: context={0},component={1},value={2},fields={3} - CALLED!", context, component, value, Arrays.toString(requiredFields))); //NOI18N
// Pre-validate (example: on null)
super.preValidate(context, component, value, requiredFields, allowNull);
// Get client id and init message + key
String clientId = component.getClientId();
- FacesMessage facesMessage = null;
+ String requiredMessage = null;
// So far all fine, no check if the field is fine
for (final String field : requiredFields) {
// Compare value's type
if ((!allowNull) && (!(value instanceof String))) {
// Value is empty
- facesMessage = new FacesMessage(MessageFormat.format("Field {0} is not String: {1}", field, value)); //NOI18N
+ requiredMessage = MessageFormat.format("Field {0} is not String: {1}", field, value); //NOI18N
}
// Cast to string
// Is it empty?
if (str.isEmpty()) {
- // Generate message
- facesMessage = new FacesMessage(MessageFormat.format("Field {0} is empty.", field)); //NOI18N
+ // Empty strings are currently not accepted, may indicate flaw in invoker
+ requiredMessage = MessageFormat.format("Field {0} is empty.", field); //NOI18N
}
}
}
// Debug message
- //this.getLogger().logDebug(MessageFormat.format("preValidate: facesMessage={0}", facesMessage)); //NOI18N
+ //this.getLogger().logDebug(MessageFormat.format("preValidate: requiredMessage={0}", requiredMessage)); //NOI18N
+
// Is it not null?
- if (null != facesMessage) {
- throw new ValidatorException(facesMessage);
+ if (null != requiredMessage) {
+ // Then there was something wrong with it
+ throw new ValidatorException(new FacesMessage(requiredMessage));
}
// Trace message
- //this.getLogger().logTrace("preValidate: EXIT!"); //NOI18N
+ //* NOISY-DEBUG: */ System.out.println("preValidate: EXIT!"); //NOI18N
}
}