JSF Custom Validation – Eposta Kontrolü

JSF, Java dünyasının web alanında parlayan değeridir. Richfaces, myFaces gibi çeşitli kütüphanelerle yeterli sayılabilecek düzeyde Ajax desteği ile de uygulama geliştirmek mümkündür. JSF’de birtakım validation’lar yani form kontrolleri (doğrulama da denebilir) doğrudan yapılabilir. Ancak bazı özel durumlara özgü validation’lar gerekebilir. Aşağıdaki örnekte JSF ile E-Posta doğrulamasının nasıl yapılacağı açıklanmıştır.

form.jsp içerisinde aşağıdaki gibi basit bir formunuzun olduğunu varsayalım;

Yukarıdaki kodlarda altı çizili Validator özelliğine ait java fonksiyonu ise;

public void emailValidate(FacesContext arg0, UIComponent arg1, Object val) throws ValidatorException { Pattern p = Pattern.compile(".+@.+\\.[a-z]+"); Matcher m = p.matcher(val.toString()); boolean emailCheck = m.matches(); if(!emailCheck) { throw new ValidatorException(new FacesMessage("Eposta adresi hatalı!")); } }

emailValidate fonksiyonunu yer aldığı java class’ının faces-config.xml’deki tanımı;

regForm net.lms.bean.RegisterForm request

Yukarıda yer alan parçaları birleştirdiğinizde RegMail form alanına ilişkin doğrulama fonksiyonunu kodumuza eklemiş oldu.