Reset quickQuery/searchRegion binding on Taskflow re-execution

I am using JDeveloper 11.1.2.4.
I have a taskflow that is used over and over again for various code tables.  This mostly works fine.  The only issue I am having is the quickQuery at the top of the form.  When restarting the taskflow for a different code table, the quickQuery component is not reset.  I've looked at the searchRegion binding and have changed the TrackQueryPerformed to Page instead of PageFlow.  Now, I can navigate to a different taskflow and come back and the quickQuery is refreshed.  However, just restarting the same taskflow, the same pagefragment is shown and thus the quickQuery component binding is not reset.
I have also tried to programatically refresh the control through a backing bean method executed by the taskflow.  No joy...
To be clear, I just want the searchRegion binding to be reset so that the default attribute is shown first in the quickQuery drop down.
I thought this would be a simple task...
Any help is very appreciated.
BradW

Ok, so that looks to have mostly fixed the issue I was experiencing.  The search region is mostly reset.  The user needs to select a criteria and then things work as expected.  What I didn't expect was this.
In my quickQuery, there is an LOV element.  Selecting an LOV element and switching / restarting the dynamic taskflow shows the search criteria as an LOV down still.  Nothing shows up when selecting it, so I don't think it will be a huge issue.  Does seem like a minor bug somewhere however....
Thanks for the suggestion Frank.  I spent way too much time on this.  Your help is greatly appreciated.
BradW

Similar Messages

  • SQL query with Bind variable with slower execution plan

    I have a 'normal' sql select-insert statement (not using bind variable) and it yields the following execution plan:-
    Execution Plan
    0 INSERT STATEMENT Optimizer=CHOOSE (Cost=7 Card=1 Bytes=148)
    1 0 HASH JOIN (Cost=7 Card=1 Bytes=148)
    2 1 TABLE ACCESS (BY INDEX ROWID) OF 'TABLEA' (Cost=4 Card=1 Bytes=100)
    3 2 INDEX (RANGE SCAN) OF 'TABLEA_IDX_2' (NON-UNIQUE) (Cost=3 Card=1)
    4 1 INDEX (FAST FULL SCAN) OF 'TABLEB_IDX_003' (NON-UNIQUE)
    (Cost=2 Card=135 Bytes=6480)
    Statistics
    0 recursive calls
    18 db block gets
    15558 consistent gets
    47 physical reads
    9896 redo size
    423 bytes sent via SQL*Net to client
    1095 bytes received via SQL*Net from client
    3 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    55 rows processed
    I have the same query but instead running using bind variable (I test it with both oracle form and SQL*plus), it takes considerably longer with a different execution plan:-
    Execution Plan
    0 INSERT STATEMENT Optimizer=CHOOSE (Cost=407 Card=1 Bytes=148)
    1 0 TABLE ACCESS (BY INDEX ROWID) OF 'TABLEA' (Cost=3 Card=1 Bytes=100)
    2 1 NESTED LOOPS (Cost=407 Card=1 Bytes=148)
    3 2 INDEX (FAST FULL SCAN) OF TABLEB_IDX_003' (NON-UNIQUE) (Cost=2 Card=135 Bytes=6480)
    4 2 INDEX (RANGE SCAN) OF 'TABLEA_IDX_2' (NON-UNIQUE) (Cost=2 Card=1)
    Statistics
    0 recursive calls
    12 db block gets
    3003199 consistent gets
    54 physical reads
    9448 redo size
    423 bytes sent via SQL*Net to client
    1258 bytes received via SQL*Net from client
    3 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    55 rows processed
    TABLEA has around 3million record while TABLEB has 300 records. Is there anyway I can improve the speed of the sql query with bind variable? I have DBA Access to the database
    Regards
    Ivan

    Many thanks for your reply.
    I have run the statistic already for the both tableA and tableB as well all the indexes associated with both table (using dbms_stats, I am on 9i db ) but not the indexed columns.
    for table I use:-
    begin
    dbms_stats.gather_table_stats(ownname=> 'IVAN', tabname=> 'TABLEA', partname=> NULL);
    end;
    for index I use:-
    begin
    dbms_stats.gather_index_stats(ownname=> 'IVAN', indname=> 'TABLEB_IDX_003', partname=> NULL);
    end;
    Is it possible to show me a sample of how to collect statisc for INDEX columns stats?
    regards
    Ivan

  • Problem Binding Parent Taskflow's Bean with Included Page's UI component

    Hi,
    I am using JDev 11.1.1.5.
    I would like to ask *2* things:
    Number 1
    I have a Parent page (parentPage.jsff) which is inside the taskflow (parentTaskFlow). parentTaskFlow has a managed bean (ParentBean.java) with BackingBean Scope.
    Inside the parentPage.jsff, a child page (childPage.jsff) is included using Dynamic Declarative Component. +*<af:declarativeComponent viewId="/childFragments/childPage.jsff" id="dc1"/>*+
    When I tried to bind a ui component from childPage.jsff to ParentBean, it is returning null for this component.
    Could you please help me with this issue? Thanks.
    Number 2
    The other important thing that I want to know is that when a page fragment (jsff) is included with Dynamic Declarative Component, Is the PageDef of that page fragment is the same as that of parent page or not? Please explain me about this also.
    Thanks & Regards,
    cmoster

    Hi Frank,
    Thanks for your explanation.
    For Number 1
    I will explain you the problem in detail:
    As I mentioned in my previous post, I tried to bind a ui component from childPage.jsff to ParentBean.
    In parentPage.jsff, there is a commandButton whose actionListener is bound to backing bean method. And inside this actionListener method, the binding for ui component is Null. That's the problem I'm facing. When I debug, the setter of the ui component is run. But in actionListener method, it returns null.
    I made another test. In childPage.jsff, there is a commandButton whose actionListener is bound to backing bean method. But inside this actionListener method, the binding for ui component is NOT Null.
    Can you help me with this issue? Thanks a lot.
    Best Regards,
    cmoster

  • Oracle 10g Diff in execution plan query with binding var Vs without

    We recently did 10g upgrade. In 10g, execution plan differs for query with binding var(thru jdbc etc) Vs without it as given below. For query with binding var,
    it chooses poor execution plan(no index is used, full scan is done etc). everything worked fine in 9i. To rectify the problem, we have to hint query with right index,join etc. but i dont like this solution.
    I would rather prefer to correct database to choose right execution path instead of eacy query level. but not sure what causes the issue.
    Does anybody came across this issue? if so, Please share your experiences. Thanks for the help. Do let me know if you need more info.
    1. Query without binding bar:
    select * from test where col1 = :1 and col2 = :2
    1. Query without binding bar:
    select * from test where col1 = 'foo' and col2= 'bar'

    I am not an expert but in my humble opinion it is the developer's responsability to ensure the correct explain plan is used before deploying code to production, if the explain plan returned by the DB is bad, then the use of a hint is perfectly acceptable.
    Check this out: http://lcgapp.cern.ch/project/CondDB/snapshot/performance.html
    Excerpt:
    Bind variable peeking. If an SQL query contains bind variables, the optimal execution plan may depend on the values of those variables. When the Oracle query optimizer chooses the execution plan for such a query, it may indeed look at the values of all bind variables involved: this is known as "bind variable peeking".
    In summary, the execution plan used for a given SQL query cannot be predicted a priori because it depends on the presence and quality of statistics and on the values of bind variables used at the time the query was first executed (hard-parsed). As a consequence of this instability of execution plans, very different performances may be observed for the same SQL query. In COOL, this issue is addressed by adding Oracle hints to the queries, to make sure that the same (good) plan is used in all cases, even with unreliable statistics or unfavourable bind variables.
    Edited by: Rodolfo Ferrari on Jun 3, 2009 9:40 PM

  • Definition class name missing in XML file of type taskFlow

    Hi all,
    I am trying to invoke a bounded taskflow from a region on a jspx page.
    My jspx page has: *<af:region value="#{bindings.citySearchTF.regionModel}" id="r1" />*
    Its page def file has :
    *<taskFlow id="citySearchTF" taskFlowId="/WEB-INF/tfs/bounded/cities/city-search-tf.xml#city-search-tf"*
    xmlns="http://xmlns.oracle.com/adf/controller/binding"/>
    My taskFlow file is :
    *<?xml version="1.0" encoding="windows-1252" ?>*
    *<adfc-config xmlns="http://xmlns.oracle.com/adf/controller" version="1.2">*
    *<task-flow-definition id="city-search-tf">*
    *<default-activity>search-city.jsff</default-activity>*
    *<data-control-scope>*
    *<shared/>*
    *</data-control-scope>*
    *<view id="search-city.jsff">*
    *<page>/view/bounded/city/search-city.jsff</page>*
    *</view>*
    *<use-page-fragments/>*
    *</task-flow-definition>*
    *</adfc-config>*
    Now, while running this jspx page, I am getting the following errors:
    On Browser : ADF_FACES-30179:For more information, please see the server's error log for an entry beginning with: The UIViewRoot is null. Fatal exception during PhaseId: RESTORE_VIEW 1.
    On WLS Logs :
    oracle.jbo.PersistenceException: JBO-34000: Definition class name missing in XML file of type taskFlow
         at oracle.adf.model.binding.DCDefBase.createAndLoadFromXML(DCDefBase.java:402)
         at oracle.adf.model.binding.DCBindingContainerDef.loadExecutables(DCBindingContainerDef.java:1482)
         at oracle.adf.model.binding.DCBindingContainerDef.loadChildrenFromXML(DCBindingContainerDef.java:1278)
         at oracle.adf.model.binding.DCDefBase.loadFromXML(DCDefBase.java:325)
         at oracle.adf.model.binding.DCDefBase.createAndLoadFromXML(DCDefBase.java:409)
         at oracle.jbo.uicli.mom.JUMetaObjectManager.createFromXML(JUMetaObjectManager.java:1274)
         at oracle.jbo.mom.PersistableDefObject.createFromXML(PersistableDefObject.java:84)
         at oracle.jbo.mom.DefinitionManager.loadDefObject(DefinitionManager.java:961)
         at oracle.jbo.mom.DefinitionManager.doFindSessionDefObject(DefinitionManager.java:1037)
         at oracle.jbo.mom.DefinitionManager.findSessionDefObject(DefinitionManager.java:705)
         at oracle.adf.model.binding.DCBindingContainerDef.findSessionDefObject(DCBindingContainerDef.java:351)
         at oracle.adf.model.binding.DCBindingContainerDef.findDefObject(DCBindingContainerDef.java:316)
         at oracle.adf.model.binding.DCBindingContainerReference.createBindingContainer(DCBindingContainerReference.java:127)
         at oracle.adf.model.binding.DCBindingContainerReference.getBindingContainer(DCBindingContainerReference.java:95)
         at oracle.adf.model.BindingContext.get(BindingContext.java:1089)
         at oracle.adf.model.BindingContext.findBindingContainer(BindingContext.java:807)
         at oracle.adf.model.BindingContext.findBindingContainerByPath(BindingContext.java:1598)
         at oracle.adfinternal.controller.application.model.UpdateBindingListener.setBindingELVariable(UpdateBindingListener.java:112)
         at oracle.adfinternal.controller.application.model.UpdateBindingListener.beforePhase(UpdateBindingListener.java:61)
         at oracle.adfinternal.controller.lifecycle.ADFLifecycleImpl$PagePhaseListenerWrapper.beforePhase(ADFLifecycleImpl.java:550)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.internalDispatchBeforeEvent(LifecycleImpl.java:100)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.dispatchBeforePagePhaseEvent(LifecycleImpl.java:147)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.dispatchBeforePagePhaseEvent(ADFPhaseListener.java:119)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.beforePhase(ADFPhaseListener.java:63)
         at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.beforePhase(ADFLifecyclePhaseListener.java:44)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:319)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:204)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:173)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:122)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:180)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    There is some issue with PageDef but I am not able to figure it out. Searched a lot on internet but didn't succeed. Thanks in advance.
    Edited by: 965225 on Dec 17, 2012 3:43 AM

    Hi all,
    I am trying to invoke a bounded taskflow from a region on a jspx page.
    My jspx page has: *<af:region value="#{bindings.citySearchTF.regionModel}" id="r1" />*
    Its page def file has :
    *<taskFlow id="citySearchTF" taskFlowId="/WEB-INF/tfs/bounded/cities/city-search-tf.xml#city-search-tf"*
    xmlns="http://xmlns.oracle.com/adf/controller/binding"/>
    My taskFlow file is :
    *<?xml version="1.0" encoding="windows-1252" ?>*
    *<adfc-config xmlns="http://xmlns.oracle.com/adf/controller" version="1.2">*
    *<task-flow-definition id="city-search-tf">*
    *<default-activity>search-city.jsff</default-activity>*
    *<data-control-scope>*
    *<shared/>*
    *</data-control-scope>*
    *<view id="search-city.jsff">*
    *<page>/view/bounded/city/search-city.jsff</page>*
    *</view>*
    *<use-page-fragments/>*
    *</task-flow-definition>*
    *</adfc-config>*
    Now, while running this jspx page, I am getting the following errors:
    On Browser : ADF_FACES-30179:For more information, please see the server's error log for an entry beginning with: The UIViewRoot is null. Fatal exception during PhaseId: RESTORE_VIEW 1.
    On WLS Logs :
    oracle.jbo.PersistenceException: JBO-34000: Definition class name missing in XML file of type taskFlow
         at oracle.adf.model.binding.DCDefBase.createAndLoadFromXML(DCDefBase.java:402)
         at oracle.adf.model.binding.DCBindingContainerDef.loadExecutables(DCBindingContainerDef.java:1482)
         at oracle.adf.model.binding.DCBindingContainerDef.loadChildrenFromXML(DCBindingContainerDef.java:1278)
         at oracle.adf.model.binding.DCDefBase.loadFromXML(DCDefBase.java:325)
         at oracle.adf.model.binding.DCDefBase.createAndLoadFromXML(DCDefBase.java:409)
         at oracle.jbo.uicli.mom.JUMetaObjectManager.createFromXML(JUMetaObjectManager.java:1274)
         at oracle.jbo.mom.PersistableDefObject.createFromXML(PersistableDefObject.java:84)
         at oracle.jbo.mom.DefinitionManager.loadDefObject(DefinitionManager.java:961)
         at oracle.jbo.mom.DefinitionManager.doFindSessionDefObject(DefinitionManager.java:1037)
         at oracle.jbo.mom.DefinitionManager.findSessionDefObject(DefinitionManager.java:705)
         at oracle.adf.model.binding.DCBindingContainerDef.findSessionDefObject(DCBindingContainerDef.java:351)
         at oracle.adf.model.binding.DCBindingContainerDef.findDefObject(DCBindingContainerDef.java:316)
         at oracle.adf.model.binding.DCBindingContainerReference.createBindingContainer(DCBindingContainerReference.java:127)
         at oracle.adf.model.binding.DCBindingContainerReference.getBindingContainer(DCBindingContainerReference.java:95)
         at oracle.adf.model.BindingContext.get(BindingContext.java:1089)
         at oracle.adf.model.BindingContext.findBindingContainer(BindingContext.java:807)
         at oracle.adf.model.BindingContext.findBindingContainerByPath(BindingContext.java:1598)
         at oracle.adfinternal.controller.application.model.UpdateBindingListener.setBindingELVariable(UpdateBindingListener.java:112)
         at oracle.adfinternal.controller.application.model.UpdateBindingListener.beforePhase(UpdateBindingListener.java:61)
         at oracle.adfinternal.controller.lifecycle.ADFLifecycleImpl$PagePhaseListenerWrapper.beforePhase(ADFLifecycleImpl.java:550)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.internalDispatchBeforeEvent(LifecycleImpl.java:100)
         at oracle.adfinternal.controller.lifecycle.LifecycleImpl.dispatchBeforePagePhaseEvent(LifecycleImpl.java:147)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener$PhaseInvokerImpl.dispatchBeforePagePhaseEvent(ADFPhaseListener.java:119)
         at oracle.adfinternal.controller.faces.lifecycle.ADFPhaseListener.beforePhase(ADFPhaseListener.java:63)
         at oracle.adfinternal.controller.faces.lifecycle.ADFLifecyclePhaseListener.beforePhase(ADFLifecyclePhaseListener.java:44)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:319)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:204)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:173)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:122)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:180)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    There is some issue with PageDef but I am not able to figure it out. Searched a lot on internet but didn't succeed. Thanks in advance.
    Edited by: 965225 on Dec 17, 2012 3:43 AM

  • How to delete stored execution plan?

    Hello!
    Version: 11.1.0.7.0
    I need a function, which deletes a stored execution plan from the CBO by sql_id, to force a new hard-parse.
    Background:
    I have an application, which calles a lot of a select-statement (with bind), using a specific execution plan, lets say 'A'. This application will run and call in the next three days.
    Now, I have recalculated the statistics of the table (by DBMS_STATS.GATHER_TABLE_STATS)
    which is used for the query, to improve performance.
    Now, the exexcution plan is good (say 'B'), and the query is fast, IF I copy the sql from the OEM to (any) other tool to get the execution plan...
    But: The application still uses the plan 'A' (which still runs slow..).
    (To opposite of the documentation! see Performance Tuning Guide, Chater 13.3.1 "When statistics are updated for a database object, Oracle invalidates any currently parsed SQL statements that access the object. The next time such a statement executes, the statement is re-parsed and the optimizer automatically chooses a new execution plan based on the new statistics.")
    A short look into v$sql, v$sql_plan shows, that the application still uses the old sql_id, which has the wrong execution plan "A" stored.
    The tested statements with plan B have the same sql, but other sql_id...

    Thank you for reading!
    The solution is:
    Add parameter no_invalidate => FALSE at the gather_table_stats call:
    exec dbms_stats.gather_table_stats(ownname=>'xxxx', tabname=>'yyyy', no_invalidate=>FALSE);

  • Regarding usage of constants while using bind variables

    Hi All,
    Can some one please help me out of this situation?
    I wrote a query in a package in which i am using bind variables for faster execution of the query in loops.
    In the above said scenario i am trying to insert a set of data into a table say 'A' by selecting from some other table say 'B'. But i also need to insert some data which is constant.
    Something like this:
    constant_val varchar2(1):='N';
    for i in 1 .. tab.count
    loop
    insert into A(Col1, Col2) values (select constant_val, B.value from B where B.value = tab(i));
    end loop;
    I wrote the query using bind variables in the manner:
    for i in 1 .. tab.count
    loop
    execute immediate 'insert into A(Col1, Col2) values (select constant_val, B.value from B where B.value = :1)' using tab(i);
    end loop;
    This compiles, but does not run ... error said is PLSQL statement not properly ended.
    I also tried the option of giving constant_value in the using clause and replacing the same in query using a bind variable. It still doesnt work.
    Is there someway by which i can squeeze in the constant value also. Can someone please advise me on this?
    Thanks in advance,
    Praveen G S

    but i was told that if i succeed
    in reducing the hard parsing of queries .. i will get
    better performance results .. Would i say too, at least for OLTP like systems
    but if i cant or rather dont have to use it while
    looping PLSQL tables and accessing data from other
    tables using this data ... then what do we use it
    for?? PL SQL is capable of bulk operations, so loop is less performant method to process data, however, if you can't do it bulk - for whatever reasons - do it in loop.
    My remark was related mostly to dynamic sql, as shoblock already said, it seems to be no reason in your code to use dynamic sql, if you can use static...
    What i not understand as well, why do you select a value from the table, if this value is already in your collection?
    values (select constant_val, B.value from B where B.value = :1)' using tab(i);Best regards
    Maxim

  • Can we bind twitter streaming with web center activity stream.

    Our PM suggests us to use Web center activity stream to store the twitter status based on our twitter search filter . To achieve that, it seems that we need to include the activity taskflow ( or data control) in our application and binding the taskflow with our twitter streaming. Is there any approach to achieve that? where can I find more details about using/extending activity stream.

    Hi-
    You can fit a 802.11n PCI Wireless adapter in your tower for maximum speed.

  • Cannot see taskflow

    I create some adf taskflow. After I drop taskflow to a jspx file and run this page, the jspx page is empty.
    How to bind the taskflow into a region? Should I do it manually?
    --------------------welcome.jspx-------------------------------------------------------
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
    <jsp:directive.page contentType="text/html;charset=UTF-8"/>
    <f:view>
    <af:document id="d1" binding="#{backingBeanScope.backing_welcome3.d1}">
    <af:form id="f1" binding="#{backingBeanScope.backing_welcome3.f1}">
    <af:region value="#{bindings.taskflowdefinition1.regionModel}" id="r1"
    binding="#{backingBeanScope.backing_welcome3.r1}"/>
    </af:form>
    </af:document>
    </f:view>
    <!--oracle-jdev-comment:auto-binding-backing-bean-name:backing_welcome3-->
    </jsp:root>

    The .JSPX page looks good. Assuming you have the corresponding region definition for your taskflow in the pageDef of your .JSPX page,
    But what do you have in the TaskFlow?.
    Thanks,
    Navaneeth

  • Number of SQL executions

    Hi there...
    I know this not related to SQL Developer properly...
    My problem is that a job is taking to much time to complete... I wanna see if my sql is executed more then once for an instance that it should execute only once...
    Threre are several reports in sqldev that are helpful (especially those Top SQL by...), I wander if it is a way of resetting the count for the number of executions as a normal user for a sql id...
    Thank you so much
    Florin POP

    kquizak wrote:
    ... , I wander if it is a way of resetting the count for the number of executions as a normal user for a sql id...
    No, you cannot do that. These counters are instance-wide and cannot be 'reset'. Not even by a SYSDBA.
    So you would have to 'snapshot' the values just before you start your job, so you can substract those values at the end of your job.
    Even better option would be, to sql-trace your job, and see exactly where time is spent, and which and how many times, SQL statements were executed.
    Toon

  • Loading default limits for every execution

    Hi,
    My situation is like that:
    I execute my sequence using sequential model. Usually, the sequence is executed "in the loop" which means when once the sequential model is launched we can test unit after unit till the moment we want to stop for some reason. The sequence is loaded dynamically by the sequential model and with unload after step executes unload option.
    In the sequence we are using limits. The default TS limits looks like below.
    All our limits get changed during the execution depending on what unit we are testing and on what stage the unit is.
    Problem:
    I thought that if the sequence is loaded dynamically and it is unloaded when executed, the next time the next unit will be tested the default values of the limits container will be loaded (as a result of being loaded dynamically and unloaded when step which calls the main sequence is executed). Unfortunately, it looks like when we perform continous testing the test limits are not reverted back to the default, as expected, but they are a superposition of the limits loaded by previous executions. Of course
    Questions:
    1. Are my expectations regarding TS behaviour are correct?
    2. How to impose the default limits to be "reset" to the default for every sequence execution, not only the first sequential model execution?
    Solved!
    Go to Solution.

    MimiKLM wrote:I'm worry about not the speed of loading you mentioned associated with your solution but the potential problems with the memory. Let say, I call the main sequence 1000 times without interrupting of the execution. So instead of having one copy of the sequence called with cleared/reinitialised all variables and properties I have 1000 copies in the memory. I'd call it a waste to have 1000 copies only because I need to have the the properties and variables cleared.
    The copy only exists while the sequence is running. Once the execution of the sequence completes, the copy will be destroyed/freed. At least as long as your code modules don't hold their own reference to it somewhere (which typically they should not be doing).
    So if you call main sequence 1000 times in a loop, you should still only ever have one runtime copy in memory at a time. The difference is a new copy is created (and destroyed once the sequence is done running) each time, rather than creating a copy only once and reusing it. There is a performance hit to this per call of your sequence that is somewhat proportional to the size of your sequence, but unless your sequence is really huge, or you test execution is extremely fast, you probably will not notice the difference.
    Hope this helps clarify things,
    -Doug

  • Is it even possible to dynamically apply view criteria in an ADF Web App?

    This is one of those situations where something that should take an hour ends up taking days.
    * I have a view.
    * The view has Bind Variables associated with it.
    * The view has View Criteria associated with it.
    * Each of the View Criteria use different Bind Variables.
    * I have a search criteria input page that receives from the user what will ultimately be used to set the bind variables.
    * I have a search results page that uses the view to display a table.
    * I have the code that dynamically sets view criteria and parameters. It is based on the following:
    http://download.oracle.com/docs/cd/E15523_01/web.1111/b31974/bcadvvo.htm#BCGFHAGA
    * This code works great, until the iterator associated with the table binding to the view is initialized. At that time, the view is reset to its defaults, and all of my code's doings are discarded. How do I know this? Because I have gone so far as to run my code that sets view criteria and binding variables dynamically in a phase event handler for the search results page in the render response phase. There is no other point at which to dynamically modify the view.
    This is turning into a situation where it seems I will need 5 different views and 5 different pages in order to show a single set of query results. I cannot get dynamically applied view criteria to work in an ADF web app. Has anyone else done it? Can anyone relate to this? Are there any other suggestions before I conclude that it's not possible for this framework to handle this simple scenario?
    Thanks

    There must be a setting or something that I am still missing here. If I write code just like this and make sure it is executed, I still only see the results of my view executed without the view criteria applied using the default bind variable values that I supplied in the view object.
    It's like the fact that I set the bind variables, the view criteria, and executed the view query programmatically is lost on the iterator -- it's like it never happened. What setting is used to ensure that the iterator uses the outcome of what I executed programmatically? There has to be a critical set or setting that I am missing.
    Here is the iterator and search region definitions defined in the page def "executables" section:
      <executables>
         <iterator Binds="CustomSearchView1" RangeSize="25"
                  DataControl="AppModuleDataControl"
                  id="CustomSearchView1Iterator"/>
        <searchRegion Binds="CustomSearchView1Iterator"
                      Customizer="oracle.jbo.uicli.binding.JUSearchBindingCustomizer"
                      id="CustomSearchView1Query"/>
        </executables>Here's the "tree" binding in the page def file:
      <bindings>
       <tree IterBinding="CustomSearchView1Iterator" id="CustomSearchView1">
          <nodeDefinition DefName="Model.CustomSearchView" Name="CustomSearchView10">
            <AttrNames>
              <Item Value="CustomId"/>
              <Item Value="CustomProjectNumber"/>
              <Item Value="CustomName"/>
              <Item Value="CustomStatus"/>
              <Item Value="CustomStatusDate"/>
            </AttrNames>
          </nodeDefinition>
        </tree>
      </bindings>In an effort to take page flow out of this mess, I had modified this to include the search criteria and search results on a single page. So, I now have a "Search" button. When the "Search" button is clicked, the action method does the following:
        public String searchActionListener ()
              // Get search criteria from select one choice and text input controls.
              AppModule appModule =
                    ( AppModule ) Configuration.createRootApplicationModule (
                        "Model.AppModule",
                        "AppModuleLocal");
              appModule.customSearch( searchCriteria1,
                                                   searchCriteria2,
                                                   searchCriteria3 );
        }In my application module this translates to:
        public void customNoticeSearch ( String searchCriteria1, String searchCriteria2, String searchCriteria3)
           CustomSearchViewImpl searchViewImp =
               ( CustomSearchViewImpl ) this.getCustomSearchView1 ();
           searchViewImp.customExecuteQuery ( searchCriteria1, searchCriteria2, searchCriteria3);
        }Finally, in my custom view object implementation code:
        public void customExecuteQuery ( String searchCriteria1, String searchCriteria2, String searchCriteria3 )
            // Set-up the parameters that are part of the core query.
            this.setp_searchCriteria1( searchCriteria1);
            this.setp_searchCriteria2( searchCriteria2);
            if ( searchCriteria3 != null )
                ViewCriteriaManager vcm = this.getViewCriteriaManager();
                ViewCriteria vc = vcm.getViewCriteria ( "WithLastCriteria" );
                this.setp_searchCriteria3( new Number ( searchCriteria3 ) );
                this.applyViewCriteria( vc );
            System.out.println ("This is fun.");
            this.executeQuery();
        }This code executes, but the results table is empty, and I know that there are results, because I can execute use execute with params to execute the base query and get the correct results back.
    Thanks for taking a look at this.

  • PageDef operatingBinding is not visible or returning null

    Hi,
    I have an ADF application with taskflow which contains a page fragement which has some methodAction bindings in its pageDef.
    I dragged this taskflow as a region in a Webcenter Portal application project page which has a pageTemplate. When that page opens, it opens fine by initializing the page which involves invoking some methodAction bindings.
    After the page got loaded, I click on a button, this again requires methodAction bindings but this time that operationBinding is returning null. so, I am not able to invoke the method.
    I am getting the operatingBinding in my managed bean as below. operatingBinding is fine while loading the page (init method) but it is giving null when I click on any button in the page after page load.
    OperationBinding operationBinding = getBindings().getOperationBinding("getPersonId")
    public BindingContainer getBindings() {
    if(this.bindings == null){
    FacesContext fc = FacesContext.getCurrentInstance();
    this.bindings = (BindingContainer)fc.getApplication().evaluateExpressionGet(fc, "#{bindings}", BindingContainer.class);
    return bindings;
    I dragged the same taskflow to an other ADF application and it worked fine before and after loading the page. I do not understand why it is not working in portal application. But it is nothing to do with Webcenter I believe. I just wanted to know if anyone faced this issue before. Please give some pointers if you have any.
    regards
    Vinay Kumar

    Page Definition is
    *<?xml version="1.0" encoding="UTF-8" ?>*
    *<pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"*
    version="11.1.1.59.23" id="SearchFragmentPageDef"
    Package="com.johnlewis.cpl.wcportal.ui">
    *<parameters/>*
    *<executables>*
    *<variableIterator id="variables"/>*
    *<iterator Binds="PartnerHrchy" RangeSize="25"*
    DataControl="PartnerSearchAMDataControl"
    id="PartnerHrchyIterator"/>
    *<iterator Binds="PartnerSearchTempVO1" RangeSize="25"*
    DataControl="PartnerSearchAMDataControl"
    id="PartnerSearchTempVO1Iterator"/>
    *<searchRegion Binds="PartnerSearchTempVO1Iterator" Criteria=""*
    Customizer="oracle.jbo.uicli.binding.JUSearchBindingCustomizer"
    id="PartnerSearchTempVO1Query"/>
    *</executables>*
    *<bindings>*
    *<methodAction id="getPersonId"*
    InstanceName="PartnerSearchAMDataControl.dataProvider"
    DataControl="PartnerSearchAMDataControl"
    RequiresUpdateModel="true" Action="invokeMethod"
    MethodName="getPersonId" IsViewObjectMethod="false"
    ReturnName="data.PartnerSearchAMDataControl.methodResults.getPersonId_PartnerSearchAMDataControl_dataProvider_getPersonId_result">
    *<NamedData NDName="uname" NDType="java.lang.String"/>*
    *</methodAction>*
    *<methodAction id="initPartnerSearch"*
    InstanceName="PartnerSearchAMDataControl.dataProvider"
    DataControl="PartnerSearchAMDataControl"
    RequiresUpdateModel="true" Action="invokeMethod"
    MethodName="initPartnerSearch" IsViewObjectMethod="false"
    ReturnName="data.PartnerSearchAMDataControl.methodResults.initPartnerSearch_PartnerSearchAMDataControl_dataProvider_initPartnerSearch_result">
    *<NamedData NDName="uname" NDType="java.lang.String"/>*
    *</methodAction>*
    *<methodAction id="searchPartnerTempTable"*
    InstanceName="PartnerSearchAMDataControl.dataProvider"
    DataControl="PartnerSearchAMDataControl"
    RequiresUpdateModel="true" Action="invokeMethod"
    MethodName="searchPartnerTempTable"
    IsViewObjectMethod="false">
    *<NamedData NDName="uname" NDType="java.lang.String"/>*
    *<NamedData NDName="param" NDType="java.lang.String"/>*
    *<NamedData NDName="leavers" NDType="java.lang.String"/>*
    *</methodAction>*
    *<tree IterBinding="PartnerHrchyIterator" id="PartnerHrchy">*
    *<nodeDefinition DefName="com.johnlewis.cpl.wcportal.model.view.PartnerHrchy"*
    Name="PartnerHrchy0">
    *<AttrNames>*
    *<Item Value="FullName"/>*
    *<Item Value="Position"/>*
    *<Item Value="LocationCode"/>*
    *</AttrNames>*
    *<Accessors>*
    *<Item Value="PositionIdPartnerHrchy"/>*
    *</Accessors>*
    *</nodeDefinition>*
    *</tree>*
    *<tree IterBinding="PartnerSearchTempVO1Iterator" id="PartnerSearchTempVO1">*
    *<nodeDefinition DefName="com.johnlewis.cpl.wcportal.model.view.PartnerSearchTempVO"*
    Name="PartnerSearchTempVO10">
    *<AttrNames>*
    *<Item Value="PartnerName"/>*
    *<Item Value="EmployeeNumber"/>*
    *<Item Value="SecurityProfileName"/>*
    *<Item Value="ResponsibilityName"/>*
    *<Item Value="PositionCode"/>*
    *<Item Value="LocationCode"/>*
    *</AttrNames>*
    *</nodeDefinition>*
    *</tree>*
    *</bindings>*
    *</pageDefinition>*
    Managed Bean code to invoke methodAction is
    *public void myTimeCard(ActionEvent actionEvent) {*
    *// Add event code here...*
    String uname = null;
    uname = ADFContext.getCurrent().getSecurityContext().getUserName();
    System.out.println("User name is " + uname);
    OperationBinding operationBinding = getBindings().getOperationBinding("getPersonId");
    System.out.println("Before setting parameters");
    System.out.println("operationBinding is " + operationBinding);
    *if(operationBinding != null){*
    operationBinding.getParamsMap().put("uname", uname);
    System.out.println("After setting parameters");
    String out = (String)operationBinding.execute();
    System.out.println("After invoking method");
    System.out.println("Person Id from getPersonId is " + out);
    if(out != null)
    personId = Long.parseLong(out);
    System.out.println("Person Id of search is " + personId);
    System.out.println("User name is " + uname);
    ADFContext.getCurrent().getPageFlowScope().put("personId", personId);
    ADFContext.getCurrent().getPageFlowScope().put("respId", null);
    ADFContext.getCurrent().getPageFlowScope().put("type", "ess");
    ADFContext.getCurrent().getPageFlowScope().put("userName",uname); //TODO username need to be passed from security Context
    *}*

  • Creation an ADF Task Flow Based on a Human Task

    Hello!
    While creating ADF Task Flow Based on a Human Task, I can't bind New TaskFlow to task, which I choose in Dialog.
    Details:
    I Have:
    BPM Project with PackageCreation.task
    ADF Project in Same Application
    I do:
    1. in Application Navigator right click on ADF Project -> New -> Web Tier -> JSF -> ADF Task Flow Based on a Human Task
    in creation Dialog I choose PackageCreation.task and Don't change name of New TaskFlow (automatically JDeveloper set this name to PackageCreation_TaskFlow)
    I have After that:
    new ADF Task Flow and my old PackageCreation.task.
    Question:
    Why my Task don't bind to created ADF task Flow based on it?
    I think, that while creating ADF Task Flow Based on a Human Task it has to change my task, writing some thing like This (inside xml):
    <taskFlowFileLocation>file:/D:/JDeveloper/mywork/SalesQuoteLab/EnterQuoteUILab/public_html/WEB-INF/EnterQuoteDetails_TaskFlow.xml</taskFlowFileLocation>
    That xml element is creating in xml of *.task, while making auto-generation form for human task in BPM Project.

    Juan C,
    I use JDeveloper 11g Release 1.
    May be I didn't explained my question correctly.
    taskdetails1 is creating, and in Data Controls I have objects of my BPM Human Task Payload.
    But in that file "PackageCreation.task" in source I can't find any link to instantly created TaskFlow.xml in my UI project.
    So, I have
    NEW project "PackageCreationUI" with PackageCreation_TaskFlow.xml in it (and TaskDetails1 file too).
    AND Did't Changed PackageCreation.task in BPM Project.
    If I use *"BPM form creation wizard"*, after creating project and TaskFlow in it I see Changes in PackageCreation.task in BPM Project, something like that:
    <taskFlowFileLocation>file:/C:/JDeveloper/mywork/testApp/PackageCreationUI/public_html/WEB-INF/PackageCreation_TaskFlow.xml</taskFlowFileLocation>

  • ORA-01006 during report from SQL Query

    We are running WebDB 2.2 against a 7.3.4.4 database. I have a report created from a SQL query which references 4 bind variables. During execution I receive the following, Failed to bind - :periodyr&#0124; &#0124;' with
    ORA-01006: bind variable does not exist.
    Anyone have any idea what causes this error, could it be because I reference a bind variable (:periodyr) more than once in the query? Is there a work around?
    I have included the where clause as reference:
    WHERE gcc.code_combination_id = gb.code_combination_id
    AND gb.code_combination_id = gjl.code_combination_id
    AND gjl.je_header_id = gjh.je_header_id
    AND gb.budget_version_id =
    (select budget_version_id
    from gl.gl_budget_versions
    where budget_name = :periodyr&#0124; &#0124;' OPERATING')
    AND gjh.actual_flag = 'B'
    AND gb.actual_flag = 'B'
    AND gb.period_name = gjl.period_name
    AND gb.period_year = nvl(:periodyr,gb.period_year)
    and gcc.segment2 = nvl(:cstctr,gcc.segment2)
    and ffvobj.attribute10 = nvl(:ctrlgrp,ffvobj.attribute10)
    and gcc.segment3 = nvl(:objcode,gcc.segment3)
    Thanks
    Mark

    I think there is a bug in the procedure which picks up the bind variables from a SQL.
    Workground: put a space between variable :periodyr and operator &#0124; &#0124; as:
    where budget_name = :periodyr &#0124; &#0124;' OPERATING')
    Hope this will work
    null

Maybe you are looking for