]> git.mxchange.org Git - jjobs-war.git/blobdiff - src/java/org/mxchange/jjobs/validator/user/JobsUserIdValidator.java
Please cherry-pick:
[jjobs-war.git] / src / java / org / mxchange / jjobs / validator / user / JobsUserIdValidator.java
index 4c6b0420a6d49c34e9e73538c2369013a42f0826..267a071f0c2311ad7bc04de6ea78e1f17117fcd1 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016, 2017 Roland Häder
+ * Copyright (C) 2016 - 2018 Free Software Foundation
  *
  * 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
 package org.mxchange.jjobs.validator.user;
 
 import java.text.MessageFormat;
+import javax.enterprise.inject.spi.CDI;
 import javax.faces.application.FacesMessage;
 import javax.faces.component.UIComponent;
 import javax.faces.context.FacesContext;
 import javax.faces.validator.FacesValidator;
 import javax.faces.validator.ValidatorException;
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
 import org.mxchange.jcoreee.validator.number.BaseNumberValidator;
-import org.mxchange.jusercore.model.user.UserSessionBeanRemote;
+import org.mxchange.jjobs.beans.user.JobsUserWebRequestBean;
+import org.mxchange.jjobs.beans.user.JobsUserWebRequestController;
 
 /**
  * A validator for user ids
@@ -37,48 +36,34 @@ import org.mxchange.jusercore.model.user.UserSessionBeanRemote;
 public class JobsUserIdValidator extends BaseNumberValidator {
 
        /**
-        * Remote bean
+        * User backing bean
         */
-       private static UserSessionBeanRemote USER_BEAN;
+       private static JobsUserWebRequestController USER_CONTROLLER;
 
        /**
         * Serial number
         */
        private static final long serialVersionUID = 12_869_569_314_764_690L;
 
-       /**
-        * Default constructor
-        */
-       public JobsUserIdValidator () {
-       }
-
        @Override
        public void validate (final FacesContext context, final UIComponent component, final Object value) throws ValidatorException {
-               // Is the instance there?
-               if (USER_BEAN == null) {
-                       try {
-                               // Not yet, attempt lookup
-                               Context initial = new InitialContext();
-
-                               // Lookup EJB
-                               USER_BEAN = (UserSessionBeanRemote) initial.lookup("java:global/jjobs-ejb/user!org.mxchange.jusercore.model.user.UserSessionBeanRemote");
-                       } catch (final NamingException ex) {
-                               // Throw it again
-                               throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_ERROR, "Cannot lookup EJB", ex.getMessage()), ex);
-                       }
-               }
-
                // All accepted, required fields
-               String[] requiredFields = {"userId"}; //NOI18N
+               final String[] requiredFields = {"userId"}; //NOI18N
 
                // Pre-validation (example: not null, not a string, empty string ...)
                super.preValidate(context, component, value, requiredFields, false);
 
+               // Is the instance there?
+               if (null == USER_CONTROLLER) {
+                       // Get bean from CDI directly
+                       USER_CONTROLLER = CDI.current().select(JobsUserWebRequestBean.class).get();
+               }
+
                // Cast value
-               Long userId = (Long) value;
+               final Long userId = (Long) value;
 
                // Define variable
-               Boolean ifUserExists = USER_BEAN.ifUserIdExists(userId);
+               final Boolean ifUserExists = USER_CONTROLLER.ifUserIdExists(userId);
 
                // Is the user id valid?
                if (!ifUserExists) {