From 29afecb48f6525e42d03946e321501519ce86a3e Mon Sep 17 00:00:00 2001 From: Roland Haeder Date: Fri, 9 Oct 2015 20:59:20 +0200 Subject: [PATCH] Continued: - added jcoree.jar (for ...) - added validator for validating address book names - added dist.sh as this lib needs to be copied to the domain's lib folder --- dist.sh | 23 ++++++++ lib/jcoreee.jar | Bin 0 -> 17973 bytes nbproject/project.properties | 3 ++ .../names/AddressbookNameValidator.java | 51 ++++++++++++++++++ 4 files changed, 77 insertions(+) create mode 100755 dist.sh create mode 100644 lib/jcoreee.jar create mode 100644 src/org/mxchange/addressbook/validator/names/AddressbookNameValidator.java diff --git a/dist.sh b/dist.sh new file mode 100755 index 0000000..f48251e --- /dev/null +++ b/dist.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +NAME="${PWD##*/}" +DIST="dist/${NAME}.jar" +LIST=`find ../*/lib/${NAME}.jar` +LIST="${LIST} `find ../*/*-ejb/lib/${NAME}.jar`" +LIST="${LIST} ${HOME}/gf_domains/domain1/lib/" + +for target in ${LIST}; +do + if [ ! -f "${DIST}" ] + then + echo "$0: '${DIST}' not found." + elif [ -d "${target}" ] + then + cp -v "${DIST}" "${target}" + elif [ -f "${target}" ] + then + cp -v "${DIST}" "${target}" + else + echo "$0: Target '${target}' not found." + fi +done diff --git a/lib/jcoreee.jar b/lib/jcoreee.jar new file mode 100644 index 0000000000000000000000000000000000000000..e68026604df58681f21d98b50b69a0add36f50a6 GIT binary patch literal 17973 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. + */ +package org.mxchange.addressbook.validator.names; + +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.string.BaseStringValidator; + +/** + * A validation class for addressbook names, such as first name or family name. + *

+ * @author Roland Haeder + */ +public class AddressbookNameValidator extends BaseStringValidator implements Validator { + + /** + * Serial number + */ + private static final long serialVersionUID = 27_587_896_710_689_451L; + + @Override + public void validate (final FacesContext context, final UIComponent component, final Object value) throws ValidatorException { + // Trace message + //this.getLogger().logTrace(MessageFormat.format("validate: context={0},component={1},value={2} - CALLED!", context, component, value)); //NOI18N + + // All accepted, required fields + String[] requiredFileds = {"addressbookName"}; //NOI18N + + // Pre-validation (e.g. not null, not a string, empty string ...) + super.preValidate(context, component, value, requiredFileds); + + // Trace message + //this.getLogger().logTrace("validate: EXIT!"); //NOI18N + } +} -- 2.39.2