الانتقال إلى المحتوى

مثبت Oracle Adf Appsstuff 4t- Tutorial - Tricks - Tips - Techniques


MuhammadYassein

Recommended Posts

package appsstuff.view;

 
import javax.el.ELContext;
import javax.el.ExpressionFactory;
import javax.el.ValueExpression;
 
import javax.faces.application.Application;
import javax.faces.context.FacesContext;
 
import oracle.adf.model.BindingContext;
import oracle.adf.model.binding.DCBindingContainer;
import oracle.adf.model.binding.DCIteratorBinding;
import oracle.adf.view.rich.component.rich.input.RichSelectOneChoice;
import oracle.adf.view.rich.component.rich.nav.RichButton;
import oracle.adf.view.rich.context.AdfFacesContext;
 
import oracle.binding.AttributeBinding;
import oracle.binding.BindingContainer;
import oracle.binding.ControlBinding;
 
 
import org.apache.myfaces.trinidad.event.ReturnEvent;
 
public class ParentBackbean {
    private RichSelectOneChoice scoDepartmentID;
    private RichButton callDept;
 
 
    public static BindingContainer getBindingContainer() {
        return (BindingContainer)resolveExpression("#{bindings}");
    }
 
 
    public static AttributeBinding findControlBinding(BindingContainer bindingContainer, String attributeName) {
        if (attributeName != null) {
            if (bindingContainer != null) {
                ControlBinding ctrlBinding =  bindingContainer.getControlBinding(attributeName);
                if (ctrlBinding instanceof AttributeBinding) {
                    return (AttributeBinding)ctrlBinding;
                }
            }
        }
        return null;
    }
 
    public static AttributeBinding findControlBinding(String attributeName) {
        return findControlBinding(getBindingContainer(), attributeName);
    }
 
    
 
    public static void setBoundAttributeValue(String attributeName,     Object value) {
        findControlBinding(attributeName).setInputValue(value);
    }
 
    private void refresh(){
    DCBindingContainer bc =  (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
    DCIteratorBinding iter = bc.findIteratorBinding("DepartmentsView1Iterator");
    iter.executeQuery();
    }
 
       public static Object resolveExpression(String expression) {
        FacesContext facesContext = getFacesContext();
        Application app = facesContext.getApplication();
        ExpressionFactory elFactory = app.getExpressionFactory();
        ELContext elContext = facesContext.getELContext();
        ValueExpression valueExp =
            elFactory.createValueExpression(elContext, expression,
                                            Object.class);
        return valueExp.getValue(elContext);
    }
 
    public static FacesContext getFacesContext() {
        return FacesContext.getCurrentInstance();
    }
    
    
    public void getNewDepartmentID(ReturnEvent returnEvent) {
 
        refresh();       
        Object experssion = ( Object) resolveExpression("#{pageFlowScope.newDept}");
        setBoundAttributeValue("DepartmentId",experssion);
        AdfFacesContext.getCurrentInstance().addPartialTarget(scoDepartmentID);
 
     }
 
 
    public void setScoDepartmentID(RichSelectOneChoice scoDepartmentID) {
        this.scoDepartmentID = scoDepartmentID;
    }
 
    public RichSelectOneChoice getScoDepartmentID() {
        return scoDepartmentID;
    }
 
    public void returnNewDept_Action(ReturnEvent returnEvent) {
        // Add event code here...
    }
 
    public void setCallDept(RichButton callDept) {
        this.callDept = callDept;
    }
 
    public RichButton getCallDept() {
        return callDept;
    }
 
    public String doo_action() {
 
        refresh();       
        Object experssion = ( Object) resolveExpression("#{pageFlowScope.newDept}");
        setBoundAttributeValue("DepartmentId",experssion);
        AdfFacesContext.getCurrentInstance().addPartialTarget(scoDepartmentID);
 
        return null;
    }
}
 
رابط هذا التعليق
شارك

ADF- Populate List from Different data source


after completing this lesson , you should able to build Select one Choice depend on different List Source.
from any source ,oracle , Sql Server ,MySQL .....

-----------------------------------------------------------------
Best regard
Apps-Stuff 
Muhammad Yassein - Cairo - Egypt
http://www.apps-stuff.com
follow us on Facebook - Twitter with AppsStuff Middleware

 

 

رابط هذا التعليق
شارك

  • بعد 2 أسابيع...
  • بعد 1 شهر...

لو سمحتوا انا مش عارف طريقة عمل override لدوال ال

 insert or delete or update in entity object

or view object 

او انى اعمل دوال جديده واستخدمها واكون شاكر افضالكم

رابط هذا التعليق
شارك

  • بعد 2 أسابيع...

لو سمحتوا انا مش عارف طريقة عمل override لدوال ال

 insert or delete or update in entity object

or view object 

او انى اعمل دوال جديده واستخدمها واكون شاكر افضالكم

السلام عليكم

ممكن تعمل base classes وليكن مثلا للEntityImpl  تستطيع من خلاله وضع الكود والذي تريد أن يكون موجود في أي Entity بعد ذلك

 

ستقوم بعمل base class  على سبيل المثال لكل من

 

1-EntityImpl

2-ViewObjectImpl

3-ApplicationModuleImpl

 

ثم بعد ذلك تقوم بعمل jar file لهذا المشروع ويكون معك library ومن ثم ضافته في المشروع الذي تريده

 

لمزيد من التوضيح يرجى مراجعة هذ الرابط

 

http://www.java-n-me.com/2013/11/adf-good-practice-provide-your-own-base.html

رابط هذا التعليق
شارك

  • بعد 1 سنة...

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية