Skip to Main Content

Java Development Tools

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

ADF ITERATOR NOT REFRESHING

2890292May 26 2017 — edited May 29 2017

Hello Folks.

I have Jdeveloper 11G 11.1.1.7.0

I will try to explain very detailed my issue, with a short example of a master-detailed table that i can't retrieve the ID... it stop working unexpected and unfortunately i can't get ride of it.

Many errors i encounter with ADF but now all seems to be fine and it doesn't work. First of all i have a table call Robos and a detail table call Poliza.

If i run the module the data shows correctly but if i try to manage the data with a invokeAction pointed to a data control bean function call RepDocArc() with refresh set to renderModel or even any other one.

I attach an image of the Module running with the respect called id (here it works well):

module.jpg

In the application that is a short one and mentioning i tried every Refresh Option available in the iterators, also i set the ChangeEventPolicy to PPR without success:

Page Definition.jpg

The RepDocArc function that autoloads when the page open is:

public void RepDocArc(){

    FacesContext ctx = FacesContext.getCurrentInstance();

    Application app = ctx.getApplication();

    ValueBinding bindCount = app.createValueBinding("#{viewScope.Counter}");

    Counter counter = (Counter) bindCount.getValue(ctx);

    BindingContext bindingctx = BindingContext.getCurrent();

    BindingContainer bindings = bindingctx.getCurrentBindingsEntry();

    DCBindingContainer bindingsImpl = (DCBindingContainer) bindings;

    DCIteratorBinding dciter = bindingsImpl.findIteratorBinding("RoboView1Iterator");

    ViewObject voRoot =dciter.getViewObject();

    ValueBinding bindActividades = app.createValueBinding("#{pageFlowScope.Actividades}");

    Actividades actividades = (Actividades) bindActividades.getValue(ctx);

    if (counter.getCount() == 0){

        voRoot.setWhereClause("NUMEROREPORTE = '04170285448'");

        voRoot.executeQuery();

        DCIteratorBinding dciter2 = bindingsImpl.findIteratorBinding("PolizaView1Iterator");

        Row row4 = dciter2.getCurrentRow();

        System.out.println(row4.getAttribute("Id1").toString()); //here i got the nullpointer exception.

        counter.setCount(counter.getCount() + 1);

    }

}

Any idea? i am running out of patient as everything has been tried .

Best regards.

Jorge.

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 26 2017
Added on May 26 2017
20 comments
1,690 views