Thursday, 18 August 2016

ADF :SESSIOIN AND PAGE FLOW SCOPE IN ADF BC



ADF :SESSIOIN AND PAGE FLOW SCOPE IN ADF BC

 

 

 








ADF :UI : PROGRESSINDICATOR



ADF :UI : PROGRESSINDICATOR

 

Static maxValue and dynamic value pass from bean..

Jsff change

<af:progressIndicator id="pi1" rendered="true"
                                    value="#{viewScope.ProgressIndicatorBean.simpleBoundedRangeModel}"/>

Bean change

SimpleBoundedRangeModel _simpleBoundedRangeModel;

    public SimpleBoundedRangeModel getSimpleBoundedRangeModel() {
        if (_simpleBoundedRangeModel == null){
            _simpleBoundedRangeModel = new SimpleBoundedRangeModel();
            _simpleBoundedRangeModel.setValue(90);
           
        }
        return _simpleBoundedRangeModel;
    }

SimpleBoundedRangeModel

public class SimpleBoundedRangeModel extends DefaultBoundedRangeModel {
    public SimpleBoundedRangeModel() {
        super(0, 300);
    }

    public void start(ActionEvent event) {
      setValue(1);
    }

    public void cancelProcess(ActionEvent event) {

        setValue(0);
        setMaximum(100);
    }


}

Dynamic value and maxValue pass from bean..

Jsff change

<af:progressIndicator id="pi1" rendered="true"
                                    value="#{viewScope.ProgressIndicatorBean.simpleBoundedRangeModel}"/>

Bean change

    SimpleBoundedRangeModel _simpleBoundedRangeModel;

    public SimpleBoundedRangeModel getSimpleBoundedRangeModel() {
        if (_simpleBoundedRangeModel == null){
            _simpleBoundedRangeModel = new SimpleBoundedRangeModel(500L,200L);
           
        }
        return _simpleBoundedRangeModel;
    }

SimpleBoundedRangeModel


public class SimpleBoundedRangeModel extends DefaultBoundedRangeModel {
        private static  long max ;
        private static  long value;
       
    public SimpleBoundedRangeModel(){
        super();
    }
   
        public SimpleBoundedRangeModel(Long max , Long value){
            this.max = max;
            this.value = value;
        }

    public void start(ActionEvent event) {
      setValue(1);
    }

    public void cancelProcess(ActionEvent event) {

        setValue(0);
        setMaximum(100);
    }

    @Override
        public long getMaximum(){
            return this.max;
        }
       
        @Override
        public long getValue(){
            return this.value;
        }

}
 


Wednesday, 3 February 2016

ADF : Performance Tips

ADF : Performance Tips


#################################################################################



getRowCount() -> getRowCount() retrives all the records from View Object by executing ViewObject Query.The count is calculated by traversing the Viewobject using next() method until the
last record is retrived. This method hinders the performance of application in case of VO with large number of rows.
getEstimatedRowCount() -> When you need to get quick count of row.Use this method. Method getEstimatedRowCount() actually retrives the count by hitting getQueryHitCount() which runs the select count(*) on the VO query.
getFetchedRowCount() -> Method getFetchedRowCount() counts the number of rows from the Result Set.Returns the number of rows fetched at that point of time.


#################################################################################

Table column -> id="c3" "filterFeatures" attribute not set

 #################################################################################

BindingSection -> TableIterator -> RowCountThresholds for the above tables should be set to -1