From: Roland Haeder Date: Thu, 15 Oct 2015 06:44:48 +0000 (+0200) Subject: Continued: X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=789b704c600d2e74a1f831c3be91a8ac98b2837e;p=addressbook-lib.git Continued: - added validator for user id - added juser-lib.jar - updated jar(s) Signed-off-by:Roland Häder --- diff --git a/lib/juser-core.jar b/lib/juser-core.jar index 0a5cdf2..52192af 100644 Binary files a/lib/juser-core.jar and b/lib/juser-core.jar differ diff --git a/lib/juser-lib.jar b/lib/juser-lib.jar new file mode 100644 index 0000000..cf6b0ff Binary files /dev/null and b/lib/juser-lib.jar differ diff --git a/nbproject/project.properties b/nbproject/project.properties index 919e3d0..db1defa 100644 --- a/nbproject/project.properties +++ b/nbproject/project.properties @@ -39,6 +39,7 @@ file.reference.jcoreee.jar=lib/jcoreee.jar file.reference.jcountry-core.jar=lib/jcountry-core.jar file.reference.jphone-core.jar=lib/jphone-core.jar file.reference.juser-core.jar=lib\\juser-core.jar +file.reference.juser-lib.jar=lib/juser-lib.jar includes=** jar.archive.disabled=${jnlp.enabled} jar.compress=false @@ -53,6 +54,7 @@ javac.classpath=\ ${file.reference.jcontacts-core.jar}:\ ${file.reference.jcontacts-business-core.jar}:\ ${file.reference.juser-core.jar}:\ + ${file.reference.juser-lib.jar}:\ ${libs.javaee-api-7.0.classpath}:\ ${libs.jpa20-persistence.classpath} # Space-separated list of extra javac options @@ -112,5 +114,6 @@ source.reference.jcoreee.jar=../jcoreee/src/ source.reference.jcountry-core.jar=../jcountry-core/src/ source.reference.jphone-core.jar=../jphone-core/src/ source.reference.juser-core.jar=../juser-core/src/ +source.reference.juser-lib.jar=../juser-lib/src/ src.dir=src test.src.dir=test diff --git a/src/org/mxchange/jusercore/model/user/UserIdValidator.java b/src/org/mxchange/jusercore/model/user/UserIdValidator.java new file mode 100644 index 0000000..eb9cad5 --- /dev/null +++ b/src/org/mxchange/jusercore/model/user/UserIdValidator.java @@ -0,0 +1,68 @@ +/* + * Copyright (C) 2015 Roland Haeder + * + * 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 . + */ +package org.mxchange.jusercore.model.user; + +import java.text.MessageFormat; +import javax.ejb.EJB; +import javax.faces.application.FacesMessage; +import javax.faces.component.UIComponent; +import javax.faces.context.FacesContext; +import javax.faces.validator.FacesValidator; +import javax.faces.validator.Validator; +import javax.faces.validator.ValidatorException; +import org.mxchange.jcoreee.validator.number.BaseLongValidator; + +/** + * A validator for user ids + *

+ * @author Roland Haeder + */ +@FacesValidator (value = "UserIdValidator") +public class UserIdValidator extends BaseLongValidator implements Validator { + + /** + * Serial number + */ + private static final long serialVersionUID = 12_869_569_314_764_690L; + + /** + * Remote bean + */ + @EJB (mappedName = "ejb/stateless-user") + private UserSessionBeanRemote userBean; + + @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 = {"userId"}; //NOI18N + + // Pre-validation (example: not null, not a string, empty string ...) + super.preValidate(context, component, value, requiredFileds, false); + + // Is the address book id valid? + if (!this.userBean.ifUserIdExists((Long) value)) { + // Is not valid + throw new ValidatorException(new FacesMessage(MessageFormat.format("No user found with id {0}. Please check your link.", value))); //NOI18N + } + + // Trace message + //this.getLogger().logTrace("validate: EXIT!"); //NOI18N + } +}