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!

Table refresh after insert shows empty cells

xDestinatioNxNov 10 2015 — edited Nov 10 2015

Hello experts,

I'm trying to insert custom values from some input fields into a table displayed on my page. The table comes from an Entity based VO with a sequence number and some Constraints.

The sequence number stacks automatically handled by the database.

The input fields are binded to a managed bean to get the value with "getValue()" and then I build a String for the input. The String gets afterwards splitted in the VO as some Attributes with the following SQL calculation for example:

REGEXP_SUBSTR(Attribute3, '[^,]+', 1, 5)

But this is on the Database/ViewObject Layer.

Following I invoke the method from the VO Impl to create the new row like this:

Managed Bean:

OperationBinding operationBinding = bindings.getOperationBinding("addRow");

operationBinding.getParamsMap().put("value1", someInt);

operationBinding.getParamsMap().put("value2", someIntToo);

operationBinding.getParamsMap().put("value3", someString);

operationBinding.execute();

VO Impl:

public void addRow(Integer value1, Integer value2, String value3) {

ViewObject vo = this;

Row newRow = vo.createRow();

newRow.setAttribute("Attribute1", value1);

newRow.setAttribute("Attribute2", value2);

newRow.setAttribute("Attribute3", value3);

vo.insertRow(newRow);

this.getDBTransaction().commit();

}

I'm catching no exceptions yet, but when I insert everything correctly and trigger the managed bean code via a button action, the table will show the new row with correct Integers, but the String splitted by the SQL calculation from above only shows as empty cells. After searching with the table filter and removing the filter search again, the Strings show up correctly.

For example, after insert:

table1.PNG

Then after "refreshing" with the filter:

table2.PNG

What can I do about this? I can't really insert the data via InsertWithParams, 'cause I need to build the String with some Java Code.

It only dont show the data after inserting, PartialTrigger(s) also wont work.

This post has been answered by kdario on Nov 10 2015
Jump to Answer

Comments

Timo Hahn

User, please tell us your exact JDev version!

I wonder where you splitt the string and how you add the resulting parts to the row. All I see is that you have an table update problem, but I don't understand why.

What you can do is to refresh the component the table resides in (e.g. the panelCollection) from the bean method with

// AdfFacesContext

  AdfFacesContext adfFacesCtx = AdfFacesContext.getCurrentInstance();

  // PPR

  adfFacesCtx.addPartialTarget(input);

where input is the container component.

Timo

kdario
Answer

You need to re-execute sql query after commit (with: vo.executeQuery() )

Dario

Marked as Answer by xDestinatioNx · Sep 27 2020
1 - 2
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Dec 8 2015
Added on Nov 10 2015
2 comments
515 views