Search
 
SCRIPT & CODE EXAMPLE
 

JAVA

primefaces custom validate

<p:outputLabel for="piBirthDay" value="Example label" />
<p:datePicker id="piBirthDay"
  validatorMessage="You are not allowed"
  value="#{data.motorbikePlateRequest.bikeOwner.birthday}"
  showTime="false" required="true">
    <f:validator binding="#{greaterOrEqual18YearOldValidator}" />
</p:datePicker>

=============================

import java.time.LocalDate;
import java.time.ZoneId;
import java.util.Arrays;
import java.util.Date;

import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;

@ManagedBean(name = "greaterOrEqual18YearOldValidator")
public class GreaterOrEqual18YearOldValidator implements Validator {

	@Override
	public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException {
		if (value == null) {
			return;
		}

		if (!isGreaterOrEqual18YearOld((Date) value)) {
			String message = "You are not allowed to make a request";
			FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_ERROR, "Validation Error", message);

			throw new ValidatorException(Arrays.asList(facesMessage));
		}
	}

	private boolean isGreaterOrEqual18YearOld(Date value) {
		final int YEAR_OLD = 18;
		LocalDate idealDateTime = this.convertToLocalDateViaInstant(value).plusYears(YEAR_OLD);
		return idealDateTime.compareTo(LocalDate.now()) < 0; // when the ideal date time less than now
	}

	private LocalDate convertToLocalDateViaInstant(Date dateToConvert) {
		return dateToConvert.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
	}
}
Comment

primefaces custom validate


@FacesValidator("fooValidator")
public class FooValidator implements Validator {

    @Override
    public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException {
        // ...

        if (valueIsInvalid) {
            throw new ValidatorException(new FacesMessage("Value is invalid!"));
        }
    }

}

Comment

PREVIOUS NEXT
Code Example
Java :: java how to get current time 
Java :: java max integer 
Java :: how to play an audio file in java 
Java :: all combinations of well-formed parentheses 
Java :: java split string on two or more spaces except for words in quotes 
Java :: JAVA_HOME is not defined correctly. 
Java :: convert string to short java 
Java :: how to test how many of one character is in a string java 
Java :: jlist set selected value 
Java :: java shorthand if 
Java :: java loop object 
Java :: java.lang.NullPointerException: Cannot invoke "java.lang.CharSequence.length()" because "this.text" is null 
Java :: How to efficiently multiply two numbers represented as Strings, in Java? 
Java :: find shortest string in array java 
Java :: spring boot jpa in clause 
Java :: how to convert outputstream to bytearrayoutputstream in java 
Java :: font type javafx button css 
Java :: date java format 
Java :: java random 5 digit int 
Java :: how to take an element out of an array at a certain index in java 
Java :: arrays.fill java 
Java :: how to read a string after an integer in java 
Java :: android retrofit get @query 
Java :: font parameters java 
Java :: how to scan a string in java 
Java :: java find longest string in list 
Java :: how to increment character in java 
Java :: how to make int array java android 
Java :: java random 
Java :: why java platform independent 
ADD CONTENT
Topic
Content
Source link
Name
3+4 =