+libs.cache.javadoc=\
+ ${base}/cache/cache-api-1.1.0-SNAPSHOT-javadoc.jar!//
libs.CopyLibs.classpath=\
${base}/CopyLibs/org-netbeans-modules-java-j2seproject-copylibstask.jar
libs.CopyLibs.displayName=CopyLibs Task
libs.CopyLibs.prop-version=2.0
+libs.cache.classpath=\
+ ${base}/cache/cache-api-1.1.0-SNAPSHOT.jar
+libs.cache.displayName=Cache 1.1.0
libs.javaee-api-7.0.classpath=\
${base}/javaee-api-7.0/javaee-api-7.0.jar
libs.javaee-api-7.0.displayName=Java EE 7 API Library
jar.index=${jnlp.enabled}
javac.classpath=\
${file.reference.jcore-logger-lib.jar}:\
- ${libs.javaee-api-7.0.classpath}
+ ${libs.javaee-api-7.0.classpath}:\
+ ${libs.cache.classpath}
# Space-separated list of extra javac options
javac.compilerargs=-Xlint:unchecked -Xlint:deprecation
javac.deprecation=true
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+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
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+-->
+<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://xmlns.jcp.org/xml/ns/javaee"
+ xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
+ bean-discovery-mode="annotated">
+</beans>
import javax.faces.component.UIInput;
import javax.faces.component.ValueHolder;
import javax.faces.context.FacesContext;
-import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;
import org.mxchange.jcoreee.validator.BaseObjectValidator;
* @author BalusC
* @author Roland Häder<roland@mxchange.org>
*/
-public abstract class BaseBooleanValidator extends BaseObjectValidator implements Validator {
+public abstract class BaseBooleanValidator extends BaseObjectValidator<Object> {
/**
* Serial number
* <p>
* @author Roland Häder<roland@mxchange.org>
*/
-public abstract class BaseDateValidator extends BaseObjectValidator {
+public abstract class BaseDateValidator extends BaseObjectValidator<Object> {
/**
* Serial number
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
-import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;
import org.mxchange.jcoreee.validator.BaseObjectValidator;
* <p>
* @author Roland Häder<roland@mxchange.org>
*/
-public abstract class BaseNumberValidator extends BaseObjectValidator implements Validator {
+public abstract class BaseNumberValidator extends BaseObjectValidator<Object> {
/**
* Serial number
* <p>
* @author Roland Häder<roland@mxchange.org>
*/
-public abstract class BaseStringValidator extends BaseObjectValidator {
+public abstract class BaseStringValidator extends BaseObjectValidator<Object> {
/**
* Serial number
String str = (String) value;
// Is it empty?
- if (str.isEmpty()) {
+ if ((!allowNull) && (null == str)) {
+ // Empty strings are currently not accepted, may indicate flaw in invoker
+ requiredMessage = MessageFormat.format("Field {0} is null.", field); //NOI18N
+ } else if ((!allowNull) && (str.isEmpty())) {
// Empty strings are currently not accepted, may indicate flaw in invoker
requiredMessage = MessageFormat.format("Field {0} is empty.", field); //NOI18N
}