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!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Refresh components outside the event root component - Panel Collection

Robert ŠajinaSep 22 2017 — edited Sep 25 2017

Hi,

After reading this post: https://blogs.oracle.com/jdevotnharvest/panelcollection-confusion-or,-what-is-an-event-root i understood what an event root component is and what is it doing.

My request is to refresh components outside the event root component.

We have a declarative component that has a Panel Collection inside. Panel collection is a event root component which means that when i press a button located in the panel collection toolbar, it only refreshes panel collection and it's children.

Because we can have more than one table in the same page, that is more than one declarative component, hence more than one panel collection. All tables on the page are depended on each other and needs to be refresh when an action occurs on each of them.

I know i can do it declarative by adding partialTriggers on each of table, buttons and so on, but this requires a lot of work and requires more work when something changes on the declarative component.

I would like to know if there is some way i can emit that event is occurred in the panel collection to the parent of declarative component so that all components of page(region) are refreshed(rerendered).

Basically i need that the panel collection is no longer an event root component, eater by somehow emitting a event to the parent, or just somehow saying that the panel collection is not a event root.

Thank you.

JDeveloper: 12.2.1.2.0

This post has been answered by SanjeevChauhan on Sep 23 2017
Jump to Answer

Comments

60437
Thanks for reporting this. I'll be looking into it. In the meantime, please tell us your first name and update your forum handle and profile with it to help us. Thanks.

Scott
634962
Done.

Let me know what you find.

Thanks.

Gregg
60437
Gregg,

First, I'm not seeing the behavior you described when uploading duplicate file names, using 3.1.1. I get a validation error when I try that. So maybe that problem is fixed.

Can someone please provide some kind of overview of APEX_APPLICATION_FILES, APEX_WORKSPACE_FILES, WWV_FLOW_FILE_OBJECTS$, and any APIs that interact with them? Some questions: What is the difference between APEX_APPLICATION_FILES and APEX_WORKSPACE_FILES? How do they then relate to WWV_FLOW_FILE_OBJECTS$?

APEX_APPLICATION_FILES is a view on wwv_flow_file_objects$ constrained by your current workspace ID. APEX_WORKSPACE_FILES has more information than APEX_APPLICATION_FILES as it joins more tables. It also appears to have a bug, showing more rows than are actually there.

Why is there 'context security' on APEX_APPLICATION_FILES but not APEX_WORKSPACE_FILES?

I do not see that this is the case. Select the view definition from dba_views to see for yourself.

Can you just work with those views directly?

For selecting, yes.

How can/should I remove the 'orphaned' records?

You can delete from wwv_flow_file_objects$ as long as you are sure about what you are doing. This table is owned by FLOWS_FILES.

Scott
634962
Scott,

Thanks for your help with this.


If you are receiving a formal validation error, then I would agree that the issue was probably fixed in the newer version. I guess I will work to get our system updated. And in the meantime, I will just avoid the problem, now knowing what it is. (I think I stumbled into this problem by simply trying to upload a file again after having updated it offline, without deleting the version that was already in ApEx.)


If I understand you correctly, APEX_APPLICATION_FILES and APEX_WORKSPACE_FILES should have the same number of rows for a given workspace ID, correct? In my environment, APPLICATION has more records than WORKSPACE, which seems backwards to what you mentioned. Please clarify/confirm.


OK -- I see the security on WORKSPACE now. It obviously just works a little differently than the security on APPLICATION.


Unfortunately, I do not have access to WWV_FLOW_FILE_OBJECTS$ or the FLOWS_FILES user. But if I got access, I would just need to delete out the problematic records? Will there only be one record for each orphan? Any other cleanup work needed? Any other tables?

Obviously, I can just use another filename, but, well...that's annoying.


Thanks again.
60437
Gregg,

To access wwv_flow_file_objects$, you can connect as SYS and then

alter session set current_schema=flows_files;

Then query for the rows of interest and delete those you don't want. Pay particular attention to the security_group_id value (this is the workspace ID). As far as identifying "orphan" rows or knowing whether there are multiple rows that meet that criteria for a given value of filename+security_group_id, you'll just have to query the data to find out.

Be aware that any changes you make to this table can affect the operation of the entire Application Express instance (all workspaces), so be very careful.

Scott

P.S. If you'll put your first name in your OTN profile, responders will have ready access to it.
1 - 5
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Oct 23 2017
Added on Sep 22 2017
4 comments
367 views