IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  sohbet

Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 12 Haziran 2012, 00:31   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
JSF PrimeFaces Email Regex Kontrolu




Merhaba,
JSF Veri Validasyon Döngüsü


Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

2EE Frameworkler üzerine bir proje geliştiriyordum. JSF Framework'u ile Primefaces görüntü teknolojilerini beraber kullanıyorum. Bir formum var şu [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...], Email kontrolü yapıp, tekrar JSF arayüzüne ajax ile uyarı göndereceğiz, son kullanıcıya.

Istemci tarafı


PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
 <f:view>
 <
h:form id="form">   
 <
p:growl id="growl" showDetail="true"  life="3000"/>
 <
p:panel id="panel-----" header="-----nuzu Paylaşınız.." style="margin-bottom:10px;"
      <
h:outputLabel for="email" value="Email"  />
    <
p:inputText value="#{-----Control.-----.-----Email}" validatorMessage="Email formatını kontrol ediniz!" size="50"
     
id="email" label="Email" required="true">
     <
f:validateRegex pattern="[\w\.-]*[a-zA-Z0-9_]@[\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]" />
     </
p:inputText>
     <
p:message for="email" />    
    </
p:panel>
<
p:commandButton value="Ekle" actionListener="#{-----Control.save()}" icon="ui-icon-disk" update="growl,panel-----" />  
    </
h:form>
    </
f:view

Istemci taraflı email regex kontrolu inputText' imiz için,

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
<f:validateRegex pattern="[\w\.-]*[a-zA-Z0-9_]@[\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]" /> 

Regex'e uygum olmayan formatta ise vereceğimiz client mesaj için inputText'in validatorMessage özelliğini kullanıyoruz.

PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
validatorMessage="Email formatını kontrol ediniz!" 

Bu kısım client taraflı kontroller idi.
Asıl önemli olan sunucu taraflı kontrollerimiz.
Validasyonumuz için bir JSF ManagedBan oluşturuyoruz fakat Validator interface sınıf'ımızı implements ediyoruz. implements ettiğimiz Validator sınıfımızın default constructor olan override validate metodu ile gelmektedir.
PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
package Egas.View.ControllerBeans;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.validator.Validator;
import javax.faces.validator.ValidatorException;


/**
 *
 * [MENTION=21475]AuthoR[/MENTION] turgay
 */
[MENTION=88634]mana[/MENTION]gedBean(name "-----Validator")
[
MENTION=22994]RequeSt[/MENTION]Scoped
public class -----Validator implements Validator{

    private static final 
String EMAIL_PATTERN "[\\w\\.-]*[a-zA-Z0-9_]@[\\w\\.-]*[a-zA-Z0-9]\\.[a-zA-Z][a-zA-Z\\.]*[a-zA-Z]";
    private 
Pattern pattern;
    private 
Matcher matcher;

    
/** Creates a new instance of -----Validator */
    
public -----Validator() {        

    }    

 @
Override
    
public void validate(FacesContext contextUIComponent componentObject valuethrows ValidatorException {

        throw new 
UnsupportedOperationException("Format henüz desteklenmiyor.");
    }

    public 
void validateEmail(FacesContext contextObject value) {
        
pattern Pattern.compile(EMAIL_PATTERN);
        
matcher pattern.matcher(value.toString());
        if (!
matcher.matches()) {
            
FacesMessage msg =
                    new 
FacesMessage("Email adres hatası.",
                    
"Geçersiz Email formatı.");
            
msg.setSeverity(FacesMessage.SEVERITY_ERROR);
            
System.out.println(msg);
            throw new 
ValidatorException(msg);

        }
        throw new 
UnsupportedOperationException("Format henüz desteklenmiyor.");
    }



FacesMessage'ları growl component'ı sayesinde ajax ile aşağıdaki gibi son kullanıcıya veriyoruz.


Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları sohbet odaları Benimmekan Mobil Sohbet
Cevapla

Etiketler
ajax, email, growl, jsf, kodlapaylas, kodlapaylascom, kontrolu, primefaces, regex, validateregex, validator


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
İp kontrolu? mydar mIRC Scripting Sorunları 0 17 Ağustos 2007 17:45
Özellere 15 dakikada 1 reklam kontrolu By_Asi_Mavi mIRC Scripting Sorunları 11 13 Ağustos 2007 03:13
30 Dakikadabir Reklam kontrolu.. XooM mIRC Scripting Sorunları 15 10 Mart 2006 00:37