JSF – Class İçinden Bean’ın Metod ve Değerlerine Erişim

26 December 2008 Friday

JSF’de Bean’lar olmazsa olmazlardır. Bazı durumlarda java sınıflarından (uzantısı java olan dosyalardan) herhangi bir bean’ın mevcut metod ve değerlerine erişmek gerekebilir. Önceleri bu erişim createValueBinding metodu ile yapılırken, bu metodun deprecated (onun işini yapacak yeni bir sınıf oluşturulmasından) olmasında dolayı bean’lara sınıflar içinden erişim createValueExpression ile yapılmaktadır. Aşağıda her iki şekilde erişime ait java kodları yer almaktadır.

createValueBinding ile Erişim Örneği

FacesContext facesContext = FacesContext.getCurrentInstance();
Application application = facesContext.getApplication();
BeanName beanName = (BeanName) application.createValueBinding("#{accForm}").getValue(facesContext);
System.out.println(beanName.getDeger());

createValueExpression ile Erişim Örneği

FacesContext facesContext = FacesContext.getCurrentInstance();
ExpressionFactory expressionFactory = facesContext.getApplication().getExpressionFactory();
ValueExpression ve = expressionFactory.createValueExpression(facesContext.getELContext(), "#{accForm}", AccountInformation.class);
BeanName beanName = (BeanName)ve.getValue(facesContext.getELContext());
System.out.println(beanName.getDeger());
Veli Akçakaya
Bilgisayar Öğretmeni
Yazılım Uzmanı
Bu yazıya yorum ekleyebilirsiniz veya kendi web sitenize geri izleme olarak ekleyebilirsiniz.
Etiketler: , ,

Yorum Ekleyin

Security Code: