when you select an year, the year navigation drop-box will set the value in different century, updating its values list too.
Code: Select all
<p:calendar size="12" navigator="true" yearRange="c-100:c-17" value="#{myBean.myDate}" validator="#{myBean.validateMyDate}" id="myDate" locale="it"><f:convertDateTime pattern="dd/MM/yyyy" /></p:calendar>
Code: Select all
@ManagedBean(name = "myBean")
@ViewScoped
public class MyBean {
private Date myDate;
public void setMyDate(Date date) { this.myDate = date; }
public Date getMyDate() {return this.myDate; }
public void validateMyDate(FacesContext context, UIComponent component, Object value){
if(value!=null && value instanceof Date){
Date d = (Date) value;
if(!atLeast17(d)){
throw new ValidatorException(new FacesMessage(FacesMessage.SEVERITY_ERROR, "Must be at least 17", "Must be at least 17"));
}
}
}
}
If I select 1994, I got selected 1894 and the values list is updated recalculating with its yearRange, so every time a select a different year, the maximum year available decreases of 17 units.
Any ideas?
Regards,
foogaro
JSF 2.0
PrimeFaces 2.2.1
Mojarra 2.1.3
Glassfish 3.1.1
Chrome 15.0.874.106