Panel form in view mode when table row select

Dear All,
I have a table and a detail form(created by dragging the vo in form).
by default when i select the row in af:table then the detail form is in edit mode. I want to have default view mode(panel form fields to be uneditable) and an edit button in the panelform when the user clicks the edit button then panelform fields should be in editable and other operation buttons(create,createInsert,commit,rollback,execute) to be visible.
Any pointers to this type of problem.??
Regards,
Santosh.
jdeveloper 11.1.1.4.0
Edited by: Santosh Vaza on May 20, 2011 12:31 PM

I'm not aware of a component which dose this out of the box. You can however implement a method in a bean which goes through the component tree beginning from your panel form and set all editable components to disable until you click the edit button. Then you use a similar method to set all components back to enabled.
Timo

Similar Messages

  • It has error when table row big than 500

    Hi,All
    my war file in Appserver8 is correct,but in JBoss4.0.2,when table row only 100 or 200, be ok yet,but big than 500,has below error.
    2007-12-14 14:43:22,062 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[yx].[Faces Servlet]] Servlet.service() for servlet Faces Servlet threw exception
    com.sun.data.provider.DataProviderException: java.lang.reflect.InvocationTargetException
         at com.sun.data.provider.impl.MethodResultTableDataProvider.invokeDataMethod(MethodResultTableDataProvider.java:257)
         at com.sun.data.provider.impl.MethodResultTableDataProvider.invokeDataMethod(MethodResultTableDataProvider.java:215)
         at com.sun.data.provider.impl.MethodResultTableDataProvider.testInvokeDataMethod(MethodResultTableDataProvider.java:267)
         at com.sun.data.provider.impl.MethodResultTableDataProvider.getRowCount(MethodResultTableDataProvider.java:397)
         at com.sun.rave.web.ui.component.TableRowGroup.getRowKeys(TableRowGroup.java:806)
         at com.sun.rave.web.ui.component.TableRowGroup.getFilteredRowKeys(TableRowGroup.java:429)
         at com.sun.rave.web.ui.component.TableRowGroup.getSortedRowKeys(TableRowGroup.java:1385)
         at com.sun.rave.web.ui.component.TableRowGroup.getRenderedRowKeys(TableRowGroup.java:876)
         at com.sun.rave.web.ui.component.TableRowGroup.iterate(TableRowGroup.java:1956)
         at com.sun.rave.web.ui.component.TableRowGroup.processDecodes(TableRowGroup.java:1679)
         at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
         at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
         at com.sun.rave.web.ui.component.Form.processDecodes(Form.java:78)
         at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
         at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
         at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
         at javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
         at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:306)
         at com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:79)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:221)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
         at com.sun.rave.web.ui.util.UploadFilter.doFilter(UploadFilter.java:194)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
         at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
         at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.reflect.InvocationTargetException
         at sun.reflect.GeneratedMethodAccessor359.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.data.provider.impl.MethodResultTableDataProvider.invokeDataMethod(MethodResultTableDataProvider.java:236)
         ... 43 more
    Caused by: java.rmi.ServerException: RuntimeException; nested exception is:
         java.lang.NullPointerException
         at org.jboss.ejb.plugins.LogInterceptor.handleException(LogInterceptor.java:386)
         at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:196)
         at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
         at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:624)
         at org.jboss.ejb.Container.invoke(Container.java:873)
         at sun.reflect.GeneratedMethodAccessor92.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
         at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:249)
         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644)
         at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:155)
         at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104)
         at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:179)
         at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:165)
         at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
         at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55)
         at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:97)
         at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86)
         at $Proxy129.getAmmeterByBooknumForInputData(Unknown Source)
         at khdf.khdfsession.KhdfSessionClient.getAmmeterByBooknumForInputData(KhdfSessionClient.java:214)
         ... 47 more
    Caused by: java.lang.NullPointerException
         at khdf.KhdfSessionBean.getAmmeterByBooknumForInputData(KhdfSessionBean.java:7024)
         at sun.reflect.GeneratedMethodAccessor360.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at org.jboss.invocation.Invocation.performCall(Invocation.java:345)
         at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:214)
         at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:185)
         at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:130)
         at org.jboss.webservice.server.ServiceEndpointInterceptor.invoke(ServiceEndpointInterceptor.java:51)
         at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48)
         at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:105)
         at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:335)
         at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166)
         at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:139)
         at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192)
         ... 68 more
    Heading 6: h6.

    Hi,Futeleufu_John
    Yes,All rows of the table display in a page througe setting layoutpanel's property "overflow:scroll".
    Same war file & jar files,it works fine when i deploys in SunAppserver8 whether the table have many rows,but in Jboss,few rows are fine,e.g. 200 rows are ok,but the table rows more than 500,it's error.
    i has test the ejb's method in Jbuilder,it's fine more than 500 rows,that is, the method is fine,only because of displaying in Jboss.
    the method KhdfSessionBean.getAmmeterByBooknumForInputData's code snippets as follows:
    public AmmeterDTO[] getAmmeterByBooknumForInputData(String charcomid,
          Integer booknum, String operid)
        if (charcomid == null || booknum == null)
          return null;
        ArrayList ammeterList = new ArrayList();
        AmmeterDTO ammeterDto = new AmmeterDTO();
        try
          Context ctx = new InitialContext();
          DataSource ds = (DataSource) ctx.lookup(strJdbc);
          conn = ds.getConnection();
          callstat = conn.prepareCall("{call p_get_ammeterinfo(?,?,?,?,?)}");
            ammeterDto = new AmmeterDTO(..........);
            ammeterList.add(ammeterDto);
        catch (SQLException ex)
        catch (NamingException ex)
        catch (ParseException ex)
        finally
          try
            if (callstat != null)
              callstat.close();
            if (conn != null)
              conn.close();
            if (rs != null)
              rs.close();
          catch (SQLException ex1)
        return (AmmeterDTO[]) ammeterList.toArray(new AmmeterDTO[0]);
      }

  • How to view data in tables by selecting the synonym from the database objec

    I could not figure out how to view data in tables by selecting the synonym from the database objects navigation tree. I had to first choose the synonym, view the details of the synonym to determine the table name, and then select the table from the database objects tree. Is this the only way available?

    This functionality currently does not exist. I don't see it on the 1.1 statement of direction either, so perhaps someone from Oracle can give some insight as to when this could be expected.
    Eric

  • Calling a Smart Form on Click of a Table Row..

    Hi All,
    I have one requirement.
    I have developed one applicaiton, in which from R3, the values are coming in form of a table. Now, on Click of a Table row, it should call a smart form developed in R3 for that selected row attribute. Also the smart form should open in a new window, so that user can take a print of it.
    How to add this new view and how to get the selected Row value ?
    Please help me.

    Hi,
    To open the new window, I have added blow code:
    IWDWindowInfo windowInfo = (IWDWindowInfo) wdComponentAPI.getComponentInfo().findInWindows("InfoPopup");
    IWDWindow window = wdComponentAPI.getWindowManager().createWindow(windowInfo, true);
    window.open();
    but, getting error message as : IWDWindowInfo cannot be resolved
    what should be the import parameter? Also please tell me how to search for the Import parameters for the respected attribute/code?
    Please help.

  • What happens when the row selection of a table is set as 'none'?

    I have a page, with a Search box, Departments and Employees tables. The user will enter a departmentId and click on Search button. Departments will be displayed. The departmentId column in Departments table is surrounded with a link. So when the user will click on the link, the desired employees will be displayed in the Employees table, if there is a view link between the VOs.
    Now suppose I have removed the view link. And the row selection of the Departments table is set as 'none'. So is it possible to get the desired employees of the chosen departmentId in this scenario, as because row selection has been disabled in the Departments table?
    I also dont want to use the Set Property Listener in this use case.

    Hi,
    If you have disabled rowselection and also are not implementing the selection listener? How will you find which row did the user select?
    Ramandeep

  • How to open a MD form in insert mode when calling from URL ?

    I have a MD form and I want to open it in 'insert' mode when I click on the URL.
    How can I do that ?
    thanks,
    Mainak

    I think somebody has asked the same questions earlier but I cannot find the link to that message. Please can anyone help me ?
    How to open a form in Insert mode from url link ?
    Mainak

  • Ttitle not displaying the title when no rows selected from a table

    My requirement is display the Ttitle value even when there are no rows fetched from a table. I tried the following -it didn't work. We are on Oracle 9.2.0.7.0. Anybody has thoughts on this... your help greatly appreciated.
    ORACLE_SID = [oracle] ? ABCDE
    PSDEVDB1:>sqlplus babu
    SQL*Plus: Release 9.2.0.7.0 - Production on Mon Jul 10 17:56:52 2006
    Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
    Enter password:
    Connected to:
    Oracle9i Enterprise Edition Release 9.2.0.7.0 - 64bit Production
    With the Partitioning, OLAP and Oracle Data Mining options
    JServer Release 9.2.0.7.0 - Production
    SQL> ttitle center 'testing'
    SQL> column x noprint
    SQL> select 'x' x from dual;
    testing
    SQL> select *from mytable3;
    testing
    NAME NO
    KUMAR 10
    RAMU 10
    BABU 10
    SQL> select *from mytable3 where no=20;
    no rows selected
    SQL>

    If your concepts are clear for Right outer join, Left outer join and Full outer join you can achieve what you are looking for.
    http://www.oreillynet.com/pub/a/network/2002/04/23/fulljoin.html
    Play with the data and may the force be with you.

  • View a single table-row as multiple rows in a GridControl

    Hi,
    is it possible to distribute the entries of a single row of a table/RowSetInfo over multiple lines of a GridControl?
    I've seen an example on the Internet (http://www2.gol.com/users/tame/swing/examples/JTableExamples4.html) which does this without database connection but it seems as if it's necessary to replace the default JTable, TableModel and UI by customized ones. As far as I've seen it's not possible to replace the JTable which is used by a GridControl? So is there any other way to do this? (A modification of the JTable-UI itself doesn't suffice as the JTable yields wrong row- and column-numbers on mousclick-events and therefore the components of the second row are not enabled properly).
    Thanks in advance
    null

    |I've seen an example on the Internet |(http://www2.gol.com/users/tame/swing/exampl|es/JTableExamples4.html) which does this |without database connection but it seems as |if it's necessary to replace the default |JTable, TableModel and UI by customized |ones.
    You wont be able to replace the JTable. But you can change all the attributes on the internal table which the grid uses (see getTable() method). The datamodel for the grid is impemented by oracle.dacf.control.swing.GridDataSource. You can possibly extend this class. You can also change the Table column model and the renderers used by the Table.
    |So is there any other way to do this? (A |modification of the JTable-UI itself doesn't |suffice as the JTable yields wrong row- and |column-numbers on mousclick-events and |therefore the components of the second row |are not enabled properly).
    Could you expain how the mapping between cell renderer and the table (row, col) is done in the extended JTable - which class ?.
    (http://www2.gol.com/users/tame/swing/exampl|es/JTableExamples4.html)
    null

  • [SOLVED :)] Need help with adf table row selection

    Hi,
    In my application I am displaying results in a table. The DisplayRow property of table is set to Selected
    There are Next and Back buttons which help user to view details associated to the next/previous rows.
    I am using ADF 11g
    When user clicks Next or Previous button, then the selection of the row should also gets updated
    To achieve this i wrote below piece of code:
    this.tblS.getSelectedRowKeys().clear();+
    this.tblS.setRowIndex(count);+
    RowKeySet rks =  tblS.getSelectedRowKeys();+
    rks.add(tblS.getRowKey());+
    rks =  tblS.getSelectedRowKeys();+
    ISSUE:_
    When i run application and click Next/Previous Button, all functionalities do take place properly, but a null pointer exception is also thrown._+
    If i remove DisplayRow property of table from Selected to Default, every thing works good and no Exception is thrown_+       
    But as records in my table are going to be around 50-60 everytime, i need to set DisplayRow property of table to Selected.
    Is there any way to achieve this? Solve this problem?
    Some more details:_
    I am using a POJO class to create DataController. This DataController is having a view Object which is used to create results table.
    I have defined Primary key for my POJO Data Controller.
    Here is code of xml file:*
    +<?xml version="1.0" encoding="UTF-8" ?>+
    +<JavaBean xmlns="http://xmlns.oracle.com/adfm/beanmodel" version="11.1.1.52.5"+
    id="ProductListBean" Package="xxadf.mm.resources"
    BeanClass="xxadf.mm.resources.ProductListBean"
    isJavaBased="true">
    +<Attribute Name="Product" Type="java.lang.String" PrimaryKey="true"/>+
    +<Attribute Name="Stock" Type="java.lang.String"/>+
    +<Attribute Name="Rate" Type="java.lang.String"/>+
    +<Attribute Name="Accuracy" Type="java.lang.String"/>+
    +<Attribute Name="Details" Type="java.lang.String"/>+
    +<ConstructorMethod IsCollection="true"+
    Type="xxadf.mm.resources.ProductListBean"
    BeanClass="xxadf.mm.resources.ProductListBean"
    id="ProductListBean"/>
    +</JavaBean>+
    Error Log:*
    SEVERE: Server Exception during PPR, #1
    java.lang.NullPointerException
    at oracle.adfinternal.view.faces.model.binding.RowDataManager.getRowIndex(RowDataManager.java:200)
    at oracle.adfinternal.view.faces.model.binding.FacesCtrlHierBinding$FacesModel.getRowIndex(FacesCtrlHierBinding.java:506)
    at org.apache.myfaces.trinidad.component.UIXIterator._fixupFirst(UIXIterator.java:414)
    at org.apache.myfaces.trinidad.component.UIXIterator.__encodeBegin(UIXIterator.java:392)
    at org.apache.myfaces.trinidad.component.UIXTable.__encodeBegin(UIXTable.java:168)
    at org.apache.myfaces.trinidad.component.UIXCollection.encodeBegin(UIXCollection.java:517)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:399)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer._encodeHorizontalChild(PanelGroupLayoutRenderer.java:458)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer.access$100(PanelGroupLayoutRenderer.java:30)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:618)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:560)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:125)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:201)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:167)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer.encodeAll(PanelGroupLayoutRenderer.java:317)
    at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer._encodeChild(PanelGroupLayoutRenderer.java:392)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer.access$300(PanelGroupLayoutRenderer.java:30)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:641)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer$EncoderCallback.processComponent(PanelGroupLayoutRenderer.java:560)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:125)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:201)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:167)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelGroupLayoutRenderer.encodeAll(PanelGroupLayoutRenderer.java:317)
    at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
    at oracle.adfinternal.view.faces.renderkit.rich.ShowDetailItemRenderer.access$100(ShowDetailItemRenderer.java:31)
    at oracle.adfinternal.view.faces.renderkit.rich.ShowDetailItemRenderer$ChildEncoderCallback.processComponent(ShowDetailItemRenderer.java:491)
    at oracle.adfinternal.view.faces.renderkit.rich.ShowDetailItemRenderer$ChildEncoderCallback.processComponent(ShowDetailItemRenderer.java:464)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:125)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:201)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:167)
    at oracle.adfinternal.view.faces.renderkit.rich.ShowDetailItemRenderer._encodeChildren(ShowDetailItemRenderer.java:406)
    at oracle.adfinternal.view.faces.renderkit.rich.ShowDetailItemRenderer.encodeAll(ShowDetailItemRenderer.java:114)
    at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
    at oracle.adf.view.rich.render.RichRenderer.encodeStretchedChild(RichRenderer.java:1523)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelTabbedRenderer.access$500(PanelTabbedRenderer.java:38)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelTabbedRenderer$BodyEncoderCallback.processComponent(PanelTabbedRenderer.java:969)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelTabbedRenderer$BodyEncoderCallback.processComponent(PanelTabbedRenderer.java:920)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:125)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:201)
    at org.apache.myfaces.trinidad.component.UIXComponent.processFlattenedChildren(UIXComponent.java:167)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelTabbedRenderer._renderTabBody(PanelTabbedRenderer.java:519)
    at oracle.adfinternal.view.faces.renderkit.rich.PanelTabbedRenderer.encodeAll(PanelTabbedRenderer.java:233)
    at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:432)
    at oracle.adfinternal.view.faces.renderkit.rich.FormRenderer.encodeAll(FormRenderer.java:221)
    at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeChild(CoreRenderer.java:415)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeAllChildren(CoreRenderer.java:432)
    at oracle.adfinternal.view.faces.renderkit.rich.DocumentRenderer.encodeAll(DocumentRenderer.java:820)
    at oracle.adf.view.rich.render.RichRenderer.encodeAll(RichRenderer.java:1187)
    at org.apache.myfaces.trinidad.render.CoreRenderer.encodeEnd(CoreRenderer.java:335)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeEnd(UIXComponentBase.java:751)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.__encodeRecursive(UIXComponentBase.java:1494)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.encodeAll(UIXComponentBase.java:771)
    at javax.faces.component.UIComponent.encodeAll(UIComponent.java:942)
    at com.sun.faces.application.ViewHandlerImpl.doRenderView(ViewHandlerImpl.java:271)
    at com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:202)
    at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:189)
    at org.apache.myfaces.trinidadinternal.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:193)
    at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._renderResponse(LifecycleImpl.java:685)
    at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:261)
    at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:193)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
    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:292)
    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:191)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
    at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
    at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
    at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.security.jps.wls.JpsWlsFilter$1.run(JpsWlsFilter.java:96)
    at java.security.AccessController.doPrivileged(Native Method)
    at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
    at oracle.security.jps.wls.util.JpsWlsUtil.runJaasMode(JpsWlsUtil.java:146)
    at oracle.security.jps.wls.JpsWlsFilter.doFilter(JpsWlsFilter.java:140)
    at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:159)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
    at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
    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.run(WebAppServletContext.java:3588)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2200)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Please Help I have been struggling with this issue for long.
    Thanks and Regards
    Manav Ratra
    Edited by: user11255144 on Feb 8, 2010 5:33 AM

    Hi Arun,
    Thanks for replying.
    Actually in my application there is one result table and a section that is displaying complete details of the product selectd in result table.
    The next/previous buttons are not binded with result table.
    What I am doing is, I am puuliing data from VO and displaying it on form, whenever any of these buttons is clicked.
    As soon as these buttons are clicked data is coming up, but selection state of table is not getting updated.
    So to update selection state i wrote piece of code described in my previous post.
    Everything works fine if displayRow property of table is not set to selected.
    If i set display row property of table to selected, then i get a null pointer exception with message log defined in previous post.
    Although NPE is thrown, yet all data is properly fetched and table selection is also updated. But am not able to get how this NPE is coming and hpw to fix it .
    (I need to keep displayRow = selected, for all other cases NPE is not thrown)
    Please help..
    Thanks and Regards
    Manav Ratra

  • Small issue with custom table cell editor and unwanted table row selection

    I'm using a custom table cell editor to display a JTree. Thing i notice is that when i select a value in the tree pop-up, the pop-up closes (as it should) but then every table row, from the editing row to the row behind the pop-up when i selected the value becomes highlighted. I'm thinking this is a focus issue, but it thought i took care of that. To clairfy, look at this: Before . Notice how the "Straightening" tree item is roughly above the "Stock Thickness" table row? When i select Straightening, this is what happens to my table: After .
    My TreeComboBox component:
    public class TreeComboBox extends JPanel implements MouseListener {
        private JTextField itemField;
        private TreeModel treeModel;
        private ArrayList<ActionListener> actionListeners = new ArrayList<ActionListener>();
        private Object selectedItem;
         * Creates a new <code>TreeComboBox</code> instance.
         * @param treeModel the tree model to be used in the drop-down selector.
        public TreeComboBox(TreeModel treeModel) {
            this(treeModel, null);
         * Creates a new <code>TreeComboBox</code> instance.
         * @param treeModel the tree model to be used in the drop-down selector.
         * @param selectedItem tree will expand and highlight this item.
        public TreeComboBox(TreeModel treeModel, Object selectedItem) {
            this.treeModel = treeModel;
            this.selectedItem = selectedItem;
            initComponents();
         * Returns the current drop-down tree model.
         * @return the current <code>TreeModel</code> instance.
        public TreeModel getTreeModel() {
            return treeModel;
         * Sets the tree model.
         * @param treeModel a <code>TreeModel</code> instance.
        public void setTreeModel(TreeModel treeModel) {
            this.treeModel = treeModel;
         * Returns the selected item from the drop-down selector.
         * @return the selected tree object.
        public Object getSelectedItem() {
            return selectedItem;
         * Sets the selected item in the drop-down selector.
         * @param selectedItem tree will expand and highlight this item.
        public void setSelectedItem(Object selectedItem) {
            this.selectedItem = selectedItem;
            String text = selectedItem != null ? selectedItem.toString() : "";
            itemField.setText(text);
            setToolTipText(text);
         * Overridden to enable/disable all child components.
         * @param enabled flat to enable or disable this component.
        public void setEnabled(boolean enabled) {
            itemField.setEnabled(enabled);
            super.setEnabled(enabled);
        public void addActionListener(ActionListener listener) {
            actionListeners.add(listener);
        public void removeActionListener(ActionListener listener) {
            actionListeners.remove(listener);
        // MouseListener implementation
        public void mouseClicked(MouseEvent e) {
        public void mouseEntered(MouseEvent e) {
        public void mouseExited(MouseEvent e) {
        public void mousePressed(MouseEvent e) {
        public void mouseReleased(MouseEvent e) {
            showPopup();
        private void initComponents() {
            setLayout(new GridBagLayout());
            itemField = new JTextField();
            itemField.setEditable(false);
            itemField.setText(selectedItem != null ? selectedItem.toString() : "");
            itemField.addMouseListener(this);
            add(itemField, new GridBagConstraints(0, 0, 1, 1, 1.0, 0.0,
                    GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0));
        private void showPopup() {
            final TreePopup popup = new TreePopup();
            final TreeComboBox tcb = this;
            final int x = itemField.getX();
            final int y = itemField.getY() + itemField.getHeight();
            int width = itemField.getWidth() + popupButton.getWidth();
            Dimension prefSize = popup.getPreferredSize();
            prefSize.width = width;
            popup.setPreferredSize(prefSize);
            SwingUtilities.invokeLater(new Runnable() {
                public void run() {
                    popup.show(tcb, x, y);
                    popup.requestFocusInWindow();
        private void fireActionPerformed() {
            ActionEvent e = new ActionEvent(this, ActionEvent.ACTION_PERFORMED, "TreeComboBoxSelection");
            for (ActionListener listener : actionListeners) {
                listener.actionPerformed(e);
        private class TreePopup extends JPopupMenu {
            private JTree tree;
            private JScrollPane scrollPane;
            public TreePopup() {
                initComponents();
                initData();
            private void initData() {
                if (treeModel != null) {
                    tree.setModel(treeModel);
            private void initComponents() {
                setFocusable(true);
                setFocusCycleRoot(true);
                tree = new JTree();
                tree.setRootVisible(false);
                tree.setShowsRootHandles(true);
                tree.setFocusable(true);
                tree.setFocusCycleRoot(true);
                tree.addTreeSelectionListener(new TreeSelectionListener() {
                    public void valueChanged(TreeSelectionEvent e) {
                        tree_valueChanged(e);
                scrollPane = new JScrollPane(tree);
                add(scrollPane);
            private void tree_valueChanged(TreeSelectionEvent e) {
                DefaultMutableTreeNode node = (DefaultMutableTreeNode) tree.getLastSelectedPathComponent();
                setSelectedItem(node.getUserObject());
                fireActionPerformed();
                this.setVisible(false);
    }My TreeComboBoxTableCellEditor:
    public class TreeComboBoxTableCellEditor extends AbstractCellEditor implements TableCellEditor, ActionListener {
        protected TreeComboBox treeComboBox;
        protected ArrayList<CellEditorListener> cellEditorListeners = new ArrayList<CellEditorListener>();
        public TreeComboBoxTableCellEditor(TreeComboBox treeComboBox) {
            this.treeComboBox = treeComboBox;
            treeComboBox.addActionListener(this);
        public Object getCellEditorValue() {
            return treeComboBox.getSelectedItem();
        public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
            treeComboBox.setSelectedItem(value);
            return treeComboBox;
        public void actionPerformed(ActionEvent e) {
            stopCellEditing();
    }Any thoughts?
    Edited by: MiseryMachine on Apr 3, 2008 1:21 PM
    Edited by: MiseryMachine on Apr 3, 2008 1:27 PM

    As I said, you have to have empty context elements before additional rows will be open for input.
    For instance if you want to start with 5 rows available for input do the following to your internal table that you will bind:
    data itab type standard table of sflight.
    do 5 times.
      append initial line to itab.
    enddo.
    context_node->bind_table( itab ).
    The other option if you need n number of rows is to add a button to the table toolbar for adding more rows. When this button is pressed, you add a new context element to the node - thereby creating a new empty row in the table.

  • Is it possible to enable/disable table row selection?

    I have a situation where a user can add rows to a "selection" table with a value that is used to perform a query to get a collection of objects associated with that value. Once those objects are available, a second "results" table will be populated with the row(s) returned. When the value is entered in the selection table, a web service call is made to perform the query and return the results. This may take a few moments and I am displaying an indeterminate progress indicator for the selection table row involved to indicate that the data is not yet available - the progress indicator is included as a column in the row; each row has its own indicator. Once the results are received the indicator is hidden to indicate the query for that row has completed. The user may enter as many rows in the selection table as they wish so there is a distinct possibility of multiple queries being executed at a given time. I have also attached a row selection listener to the selection table such that when a given row is selected, the results table will display the corresponding associated row(s).
    What I'd like to be able to do is somehow temporarily disable the selection of any row that has a query in progress, while leaving other rows whose queries have completed be selectable. Once the query completes, the row can then become selectable, thus allowing for the results to be loaded and displayed in the results table. The way it works right now, if the row is selected while the query is still in progress, nothing is displayed (obviously), but then the row has to be re-selected after the query has completed to see the results. This is a viable (though undesirable) solution/workaround if there is at least one other row in the table. However, if the row is the only row in the table and has been selected, it cannot be re-selected (there's no other row to select to allow for re-selection). To boil it down, what I'd like to do is prevent the selection of the row until the query for that row is complete.
    After perusing the JavaFX 2.2 API, I'm not seeing any obvious way to achieve this effect. If anyone has any solutions, suggestions, etc. on how this could be done I'd appreciate it greatly.

    Here's an [url https://github.com/james-d/Conditionally-selectable-table]example. As predicted, keyboard navigation fails if the keyboard presses would result in an unselectable item being selected using the default selection model. The best workaround I can see for this is to register event filters for the appropriate keyboard strokes, as in the previously referenced thread.
    Update: That code won't run in the current (ea b90) release of JavaFX 8.0, and probably a few recent releases; it will however run in the final release (and it runs in JDK 7). See [url https://javafx-jira.kenai.com/browse/RT-30593]RT-30593
    Edited by: James_D on May 22, 2013 7:51 PM

  • ADF Faces 10g af:table row selection using SHIFT Key

    Hello,
    Is there a simple way in 10G af:table with multiple selection facet to enable selecting multiple rows of a table by selecting one row, holding the SHIFT key down, selecting another row way down, and having all the rows in the middle be automatically selected?
    So, this is essentially equivalent to "Select Range" Capability.
    Thank you for any information.

    I think the simple answer to your question is, no.
    In 11g, I think the answer is, yes; but you probably already knew that.
    You might consider altering the keySet associated with the table related to the multi-select checkbox facet. You could have some section above the table that selects these check boxes based on some entered filter criteria. The keySet is a little weird though. You might check out its usage in SRDemo Application Module Impl class code which deletes over this keyset, and work backwards from there.

  • Set Form To Query Mode When Particular Window Activated

    I have a form with multiple windows. I have one window that when activated I want the form to be in query mode. This window functions as a more user-friendly search method. So when the user enters the window it will be in query mode, they will be able to enter data into a field, and then click a button I've created to execute the query and return results. I know I can use the when_window_activated built in, but I am not sure of the proper trigger code to accomplish what I've described below. I am also not sure of what level to place such a trigger. Any help is greatly appreciated. Thanks, Jason.

    You are correct, the when-window-activated trigger will only work at the form level.
    Your suggestion would work if the window in question was the initial window activated at form start up. However it is not the startup window. I am calling this window via a button from the startup window. When the button is activated I close my startup window (which is basically a menu window that takes the user to other windows based on the button they selected) and activate the window associated with the selected button.
    So including the form level when-window-activated trigger as suggested causes both my selected startup window (set in the form properties) and the window I wish to be in query mode to launch...and I receive a FRM-41009: Function key not allowed error.
    Regards,
    Jason

  • How do i keep my table row selected when i come back to the same page?

    I have have the following issue.
    I have a table with many rows. I select one row and click the button which takes me to another page. From that page when i click the back button which takes me back to previous page but the problem is that the row is no longer selected. How would i fix this problem?
    Any idea, suggestion or sample code will be appreciated.
    Thanks
    Nahman

    Here you go..
    1. To Get the selected Rows:
      DATA: TV          TYPE REF TO CL_HTMLB_TABLEVIEW,
             LT_FORMS TYPE TIHTTPNVP,
            TABLE_EVENT TYPE REF TO CL_HTMLB_EVENT_TABLEVIEW.
        tv ?= CL_HTMLB_MANAGER=>GET_DATA( request = request
                                          name    = 'tableView'
                                          id      = 'tvX' ).
        IF tv IS NOT INITIAL.
          table_event = tv->data.
          clear selectedRowIndexTable.
          selectedRowIndexTable = table_event->PREVSELECTEDROWINDEXTABLE.
          if table_event->event_type eq CL_HTMLB_EVENT_TABLEVIEW=>CO_ROW_SELECTION.
            read table selectedRowIndexTable with key table_line = table_event->ROW_INDEX
              transporting no fields.
            if sy-subrc eq 0.
              delete selectedRowIndexTable index sy-tabix.
            else.
              field-symbols <i> type i.
              append initial line to selectedRowIndexTable assigning <i>.
              <i> = table_event->ROW_INDEX.
            endif.
          endif.
        ENDIF.
      ENDIF.
    <b>Page attribute:</b>
    selectedRowIndexTable     TYPE     INT4_TABLE
    2. To store the selected row index into Server side cookie...
          CALL METHOD CL_BSP_SERVER_SIDE_COOKIE=>SET_SERVER_COOKIE
            EXPORTING
              NAME                  = 'select_row'
              APPLICATION_NAME      = 'NONE'
              APPLICATION_NAMESPACE = 'NONE'
              USERNAME              = SY-UNAME
              SESSION_ID            = 'NONE'
              DATA_VALUE            = selectedRowIndexTable
              DATA_NAME             = 'sbsp'
              EXPIRY_TIME_REL       = 3600.
    3. Get the value from Server side cookie..
          CALL METHOD CL_BSP_SERVER_SIDE_COOKIE=>GET_SERVER_COOKIE
            EXPORTING
              NAME                  = 'select_row'
              APPLICATION_NAME      = 'NONE'
              APPLICATION_NAMESPACE = 'NONE'
              USERNAME              = SY-UNAME
              SESSION_ID            = 'NONE'
              DATA_NAME             = 'sbsp'
            CHANGING
              DATA_VALUE            = selectedRowIndexTable.
    Hope this will help you...
    <b>* Reward each useful answer</b>
    Raja T

  • Issue regarding Progress Indicator on table row selection

    Hi Team,
    I have overridden onSelectionListener on a table. On click of any record in the table I am performing some operation which takes few seconds to execute. So, I have to show a processing bar on click of any records in the table till the execution completes. I have added a .gif image as the progress Indicator and referring this in the client attribute of the output text in the columns in the table.
    --Code added for the output text in table column
    <af:column sortProperty="#{bindings.XxqaSSCOrderInfoRO11.hints.TagNumber.name}"
    sortable="false" headerText="#{emqacerts_uiBundle.TAG_NUMBER}" id="c9"
    filterable="true" align="center"
    inlineStyle="#{row.sn_status eq 'PRINT'?'background-color:#c4ff94;' : row.sn_status eq 'DRAFT'? 'background-color:#ffefa3;':'background-color:#ffffff;'}">
    <af:inputText value="#{row.bindings.TagNumber.inputValue}"
    label="#{bindings.XxqaSSCOrderInfoRO11.hints.TagNumber.label}"
    required="#{bindings.XxqaSSCOrderInfoRO11.hints.TagNumber.mandatory}"
    columns="#{bindings.XxqaSSCOrderInfoRO11.hints.TagNumber.displayWidth}"
    maximumLength="#{bindings.XxqaSSCOrderInfoRO11.hints.TagNumber.precision}"
    shortDesc="#{bindings.XxqaSSCOrderInfoRO11.hints.TagNumber.tooltip}"
    id="it6" clientComponent="true">
    <f:validator binding="#{row.bindings.TagNumber.validator}"/>
    <af:clientAttribute name="loadingIndicatorId"
    value="#{backing_Pages_MainPage.loadingIndicatorId}"/>
    <af:clientListener method="showWhenBusy" type="click"/>
    </af:inputText>
    </af:column>--Code in the backing bean
    public void setLoadingBox(RichPanelBox loadingBox) {
    this.loadingBox = loadingBox;
    public RichPanelBox getLoadingBox() {
    return loadingBox;
    public String getLoadingIndicatorId() {
    return getLoadingBox().getClientId(FacesContext.getCurrentInstance());
    }--Code in the jsff page for the image
    <af:panelBox text="#{emqacerts_uiBundle.PROCESSINGPLEASEWAIT}" id="pb10" clientComponent="true"
    binding="#{backing_Pages_MainPage.loadingBox}" inlineStyle="display:none;"
    titleHalign="center" background="dark" showDisclosure="false" ramp="highlight">
    <af:panelGroupLayout id="pgl5" layout="horizontal" halign="center">
    <af:spacer width="60" height="10" id="s1"/>
    <af:image source="/images/progress.gif" id="i1"/>
    </af:panelGroupLayout>
    </af:panelBox>--JavaScript
    <af:resource type="javascript">
    //Global variable to hold the component ref.
    var loadingIndicatorComponent;
    function showWhenBusy(event) {
    //get the dialog or other component we want to show and hide
    var componentId = event.getSource().getProperty('loadingIndicatorId');
    loadingIndicatorComponent = AdfPage.PAGE.findComponent(componentId);
    if (loadingIndicatorComponent != null) {
    AdfPage.PAGE.addBusyStateListener(loadingIndicatorComponent, handleBusyStateCallback);
    event.preventUserInput();
    else {
    AdfLogger.LOGGER.logMessage(AdfLogger.SEVERE, "Requested indicator compoenent not found");
    function handleBusyStateCallback(event) {
    if (loadingIndicatorComponent != null) {
    // Check is this is a dialog as
    // this needs different treatment
    var isDialog = (loadingIndicatorComponent.getComponentType() == "oracle.adf.RichPopup");
    if (event.isBusy()) {
    if (isDialog) {
    loadingIndicatorComponent.show();
    else {
    loadingIndicatorComponentId = AdfAgent.AGENT.getElementById(loadingIndicatorComponent.getClientId());
    loadingIndicatorComponentId.style.display = "inherit";
    else {
    if (isDialog) {
    loadingIndicatorComponent.hide();
    else {
    loadingIndicatorComponentId = AdfAgent.AGENT.getElementById(loadingIndicatorComponent.getClientId());
    loadingIndicatorComponentId.style.display = "none";
    AdfPage.PAGE.removeBusyStateListener(loadingIndicatorComponent, handleBusyState);
    </af:resource>My problem is, if I click on any record in the table for first time, progress bar is not displayed. But from second click of any record, it starts displaying.
    If anyone has any idea on this then please let me know what the issue is.
    Thanks in advance,
    Kavitha

    Hi John,
    Thanks for your quick reply. I tried using af|statusIndicator component. But this doesnt disable the components on the page while the server is busy.
    Is there any way to disable the page/make the page read only when the processing is happening ?
    Thanks in advance,
    Kavitha

Maybe you are looking for