ADF table issue

Hi,
I am able to see not more than 25000 rows in the table but the collection model that is bound has around 100k rows. Is it because there is a limit on the number of rows displayed in an adf table or is it something related to internal configuration on datacontrols or table??
Thanks.

Which jdev version do you use?
You are sure that the model contains 100K rows?
This will consume lots of memory!
Timo

Similar Messages

  • Row selection in adf table issue after commit or rollback

    Using jdev 11g (11.1.1.62)
    I have a adf table with multi select enabled. There is a child table bounded at BC4J level via a VL
    On the rowSelectionListener I attached a bean method. This bean method bascially finds the selected row from UI and then based on it query the child vo again and then finally refreshes the child table.
    This works fine as expected.
    However, what happens is when the Cancel button is called on UI which is bound to a rollback action in the AMImpl then the UI refreshes. And the master table still shows the previously selected row but the child VO shows the rows of the first master VO row rather the selected one.
    How to fix this? Further as old row is already selected in the master table so reclicking on the same row does nothing,

    just to update after the rollback is called in the cancel button i wrote following code which does not change the row focus to the first row
    DCBindingContainer bc =
    (DCBindingContainer)BindingUtils.getBindingContext().getCurrentBindingsEntry();
    DCIteratorBinding profItr =
    bc.findIteratorBinding("ProfileSearchInstIterator");
    Row cRow = profItr.getRowAtRangeIndex(0);
    if(cRow != null){
    System.out.println("Current row is not null so fixed ");
    profItr.setCurrentRowIndexInRange(0);
    RowKeySetImpl rks = new RowKeySetImpl();
    ArrayList keyList = new ArrayList();
    keyList.add(cRow.getKey());
    rks.add(keyList);
    profileTable.setSelectedRowKeys(rks);
    AdfFacesContext.getCurrentInstance().addPartialTarget(profileTable);
    }

  • Adf table issue on 1st selection,from 2nd selection all works. Please help !!!

    I am using Jdev 11.1.1.4.0 .
    I have a table which consists of 2 check box and a button plus other data. Now the problem is when we select the table/check box for the 1st time the table events behave unusally.
    When I click the check box for the 1st time it gets unchecked.
    But from 2nd selection everything works as expected. I am not pasting all columns of the table , if you ppl need them i'll paste it too.
    Please feel free to ask any details you need, I am giving as much as possible from my side.
    Note:- I have implemented paginaton so I had to use rangeSet ,cant use CollectionModel to do that.
    <af:table value="#{bindings.GESearchVacancyTableVO1.rangeSet}"
                                                              var="row"
                                                              rows="#{bindings.GESearchVacancyTableVO1.rangeSize}"
                                                              emptyText="#{bindings.GESearchVacancyTableVO1.viewable ? 'No data to display.' : 'Access Denied.'}"
                                                              fetchSize="#{bindings.GESearchVacancyTableVO1.rangeSize}"
                                                              first="#{bindings.GESearchVacancyTableVO1.rangeStart}"
                                                              rowBandingInterval="0"
                                                              selectionListener="#{PaginationBean.rowSelected}"
                                                              rowSelection="multiple"
                                                              columnSelection="multiple"
                                                              id="t1"
                                                              contentDelivery="immediate"
                                                              autoHeightRows="#{bindings.GESearchVacancyTableVO1.rangeSize}"
                                                               styleClass="reqTables"
                                                               inlineStyle="width:700px; height:598px;"
                                                              binding="#{pageFlowScope.UpdateRequestSearch.vacancyTable}">
                                                            <af:column sortProperty="update"
                                                                       sortable="false"
                                                                       headerText="UPDATE"
                                                                       id="c0" align="center">
                                                                    <af:commandButton text="UPDATE"
                                                                                      id="cb1"
                                                                                      action="#{pageFlowScope.UpdateRequestSearch.onClickTravel}"
                                                                                      actionListener="#{pageFlowScope.UpdateRequestSearch.onSelect}"
                                                                                      styleClass="buttonA">
                                                                            <af:setActionListener from="#{row.VacancyNumber}"
                                                                                                  to="#{sessionScope.searchVacancyNo}"/>
                                                                    </af:commandButton>
                                                            </af:column >
                                                            <af:column sortProperty="HOLD"
                                                                       sortable="false"
                                                                       headerText="HOLD"
                                                                       id="c100" align="center">
                                                                       <f:facet name="header">
                                                                       <af:panelGroupLayout id="pgHold" layout="vertical">
                                                                       <af:commandButton text="HOLD"
                                                                                      id="cb61"
                                                                                      styleClass="buttonA">
                                                                            <af:showPopupBehavior popupId="p1" triggerType="click"/>
                                                                        </af:commandButton>
                                                                 </af:panelGroupLayout>
                                                                       </f:facet>
                                                                                              <af:selectBooleanCheckbox text=""
                                                                                              label=""
                                                                                              id="sbc1"
                                                                                              immediate="true"
                                                                                              autoSubmit="true"
                                                                                              rendered="#{row.Status eq 'Approved' and row.Chkbox eq '0'}"
                                                                                              value="#{row.HOLD}"
                                                                                              valueChangeListener="#{pageFlowScope.UpdateRequestSearch.onHold}" >
                                                                                              <af:clientAttribute  name="attr" value="#{row.VacancyNumber}" />
                                                                    </af:selectBooleanCheckbox>
                                                            </af:column>
    </af:table>
    //On check box click .
        public void onHold(ValueChangeEvent valueChangeEvent) {
            // Add event code here...
            DCIteratorBinding itr=ADFUtil.findIterator("GESearchVacancyTableVO1Iterator");
            RowSetIterator rsi=itr.getRowSetIterator();
                UIComponent holdBox=valueChangeEvent.getComponent();
                String vacnum=holdBox.getAttributes().get("attr").toString();
                Key key=new Key(new Object[] {vacnum});
               Row currRow=itr.getCurrentRow();
                 if (currRow!=null){
                     System.err.println("Row found:::DDDD"+currRow.getAttribute("VacancyNumber"));
                try{
            if(valueChangeEvent.getNewValue().equals(Boolean.TRUE)){
                System.err.println("Selected TRUE for vacNum"+currRow.getAttribute(0));
                currRow.setAttribute("HOLD", true);
                currRow.setAttribute("CANCEL", false);
                if( getKeyListCancel().contains(key))
                       getKeyListCancel().remove(key);
                getKeyList().add(key);
            }else if(valueChangeEvent.getNewValue().equals(Boolean.FALSE)){
                System.err.println("Selected FALSE");
                currRow.setAttribute("HOLD", false);
                getKeyList().remove(key);
              ADFUtil.doPartialRefresh(vacancyTable);
              System.err.println("Now the size list "+getKeyList().size());     
            }catch(oracle.jbo.AttrSetValException e){
                currRow.setAttribute("HOLD", false);
              itr.refresh(DCIteratorBinding.RANGESIZE_UNLIMITED);
              AdfFacesContext adfContext = AdfFacesContext.getCurrentInstance();
              adfContext.addPartialTarget(vacancyTable);
              // ADFUtil.throwErrorMsg(null, e.getMessage());
    // SelectionListner which basically sets the selected row as current row
        public void rowSelected(SelectionEvent se){
          JUCtrlRangeBinding staffView = getStaffView();
          staffView.getIteratorBinding().setCurrentRowIndexInRange((Integer)se.getAddedSet().toArray()[0]);
        private JUCtrlRangeBinding getStaffView(){
                    String view="GESearchVacancyTableVO1";      
          BindingContext bindingCtx = BindingContext.getCurrent();
          BindingContainer bindings = bindingCtx.getCurrentBindingsEntry();
          JUCtrlRangeBinding objView=(JUCtrlRangeBinding)bindings.getControlBinding(view);
          return objView;

    Same issue in 11.1.1.7 . I am using out of the box pagination for this purpose though. Any pointers plz? Somehow the very first action of check box is being reset by the framework. Even though the state of the check box on UI shows up as selected, the column value is reset to its original value(false).

  • Issue with the last column stretching in ADF table

    There is an issue wherein when  I try stretching the last column of the ADF table to reduce its width it does stretch. But whenever I try stretching it back to this original position it doesn't despite having columnstretching attribute set to multiple and assign widths in percentages to columns . When I set the columnstretching attribute to none, the last column does stretch back and forth but on page load the table does not stretch to its full width despite having styleClass="AFStretchWidth". Now I dont want to be assigning fixed width in pixels to the columns. I would want the last column to stretch back and forth with columnstretching="multiple" and styleClass="AFStretchWidth". I see the same issue on components demo page as well. Tag Guide

    If you are trying that each column gets equally stretched based on the browser, its not possible as adf doesn't supports that.
    If your table is not stretching use styleClass="AFStretchWidth".
    But if all your columns are not stretching you can only try setting column widths + columnStretching property (where you can specify which column to stretch to fill all the spaces)
    Amit

  • Adf table columnStretching issue when using with in panel splitter

    My Scenario is like this:
    I have used adf table with columnStretching to last column of table. And the table is placed at second facet of panelSplitter. On load it covers full area of second facet which is pretty good. When try to collapse panelSplitter, arround 2 pixel of horizontal scrollbar appears at bottom. Even on uncollapse the panelSplitter to original orientation, the extra space remains there which makes horizontal scrollbar with 2 pixel gap for movement at bottom of table.
    Is Anyone facing this kind of issue? And how can I solve the issue?
    Thank you for your help and responses in advance. YOur help will be very much valuable to me.

    Hi Frank,
    I am using FF, Chrome and also IE in different compatibility mode. While wrapping with panelCollection it works fine. But the menu bar section and status bar is introduced on panelCollection which I cannot use in my work.
    -Robin

  • Issue with autosubmit selectchoice in adf table

    I have a column in adf:table which has select choice with autosubmit property set. When the value in the select list changes the table has to refresh and so I have set partialTrigger on table to the select list.
    Now the issue is that when a query is performed and the table refreshes to render the query results, the value change listener of the select choice is invoked with mutiple times (based on number of rows ). The new value of the select choice is null. Why does this happen, how can I avoid it?

    hi ,
    can i see the code of the table ?

  • ADF Table with CheckBox - Select/deselect issue

    I have seen couple of threads and blogs for ADF table with check box . but none of them exactly matching with my requirement . My Database table does not have any field for check box .
    Here is my DB Table
    tableA_
    A_Id
    A_Name
    tableB*
    B_Id
    Requirements :*
    1. Display the above tables data with Checkbox . ( if A_Id = B_Id then the checkbox will be checked , else unchecked ) .
    2. Select / deselect the check box and save the data . Saving the data , will update only tableB . i,e when a new check box is selected then A_Id value will be inserted to tableB . Similarly , deselecting a checked in data will remove the entry from tableB.
    Development :
    1. Created a VO where tableB has marked as updateable .
    2. Created a transient Boolean variable for checkBox . and modified the getter method of checkbox for returning true/false based on the below condition in the ViewRowImpl Class .
    if ( A_Id = B_Id )
    return true;
    else false ;
    3. I have not modified the setter method .
    Using the above concept i can view the data with selected checkbox . but the problem is to save the data . because , when I select a checkbox the above coding in the getter method will return false .
    Therefore , though i am selecting the checkbox but value of the checkbox has been set as false .
    While saving the Data , I am iterating through the VOIterator and observed that a newly selected checkbox value is false . and realized its because of the getter method condition .
    Can you please suggest how can I overcome this issue or shall I need to take any other approach ?
    Jdev version 11.1.1.5
    Regards,
    Amitava
    Edited by: Amitava on Mar 17, 2012 3:48 PM

    You need to go through the ADF page life cycle concepts. In simple words the boolean value in the model is not set while in valueChangeListener. Try adding valueChangeEvent.getComponent().processUpdates(FacesContext.getCurrentInstance()); on top in your listener method and see the effect.
    Reference:
    http://docs.oracle.com/cd/E15051_01/web.1111/b31974/adf_lifecycle.htm

  • Issue with the partialTrigger on ADF Table

    Jdeveloper Version 11.1.2.3.0
    I have replicated issue with partialTrigger on the table component. Sample application can be downloaded from here . It needs HR schema to run.
    In below sample pageFragment, I can try refreshing adf table in two ways
    1. Set addEmployee button's id in partialTrigger of ADFTable component.
    2. Set addEmployee button's id in partialTrigger of PanelBox component.
    Note the difference - 1st one doesn't work where as 2nd works fine. Do we have any additional constraints when refreshing ADF table using
    partialTrigger ?
    I replicated the usecase in below example :
    PageFragment Structure -
    PanelBox                         
    |                              
    |__ ADF Table                         
    |                              
    |__toolbar facet                    
    |                              
    |__ addEmployee button                
    PageFragment Code
    <af:panelBox text="PanelBox2" id="pb1">
    <f:facet name="toolbar">
    <af:commandButton actionListener="#{bindings.addEmployee.execute}" text="addEmployee2"
    disabled="#{!bindings.addEmployee.enabled}" id="cb1" partialSubmit="true"/>
    </f:facet>
    <af:table value="#{bindings.EmployeesView1.collectionModel}" var="row" rows="#{bindings.EmployeesView1.rangeSize}"
    emptyText="#{bindings.EmployeesView1.viewable ? 'No data to display.' : 'Access Denied.'}"
    fetchSize="#{bindings.EmployeesView1.rangeSize}" rowBandingInterval="0"
    selectedRowKeys="#{bindings.EmployeesView1.collectionModel.selectedRow}"
    selectionListener="#{bindings.EmployeesView1.collectionModel.makeCurrent}" rowSelection="single" id="t1"
    displayRow="selected" partialTriggers="::cb1" styleClass="AFStretchWidth">
    <af:column sortProperty="#{bindings.EmployeesView1.hints.EmployeeId.name}" sortable="false"
    headerText="#{bindings.EmployeesView1.hints.EmployeeId.label}" id="c1">
    <af:inputText value="#{row.bindings.EmployeeId.inputValue}"
    label="#{bindings.EmployeesView1.hints.EmployeeId.label}"
    required="#{bindings.EmployeesView1.hints.EmployeeId.mandatory}"
    columns="#{bindings.EmployeesView1.hints.EmployeeId.displayWidth}"
    maximumLength="#{bindings.EmployeesView1.hints.EmployeeId.precision}"
    shortDesc="#{bindings.EmployeesView1.hints.EmployeeId.tooltip}" id="it1">
    <f:validator binding="#{row.bindings.EmployeeId.validator}"/>
    <af:convertNumber groupingUsed="false" pattern="#{bindings.EmployeesView1.hints.EmployeeId.format}"/>
    </af:inputText>
    </af:column>
    <af:column sortProperty="#{bindings.EmployeesView1.hints.FirstName.name}" sortable="false"
    headerText="#{bindings.EmployeesView1.hints.FirstName.label}" id="c2">
    <af:inputText value="#{row.bindings.FirstName.inputValue}"
    label="#{bindings.EmployeesView1.hints.FirstName.label}"
    required="#{bindings.EmployeesView1.hints.FirstName.mandatory}"
    columns="#{bindings.EmployeesView1.hints.FirstName.displayWidth}"
    maximumLength="#{bindings.EmployeesView1.hints.FirstName.precision}"
    shortDesc="#{bindings.EmployeesView1.hints.FirstName.tooltip}" id="it2">
    <f:validator binding="#{row.bindings.FirstName.validator}"/>
    </af:inputText>
    </af:column>
    <af:column sortProperty="#{bindings.EmployeesView1.hints.LastName.name}" sortable="false"
    headerText="#{bindings.EmployeesView1.hints.LastName.label}" id="c3">
    <af:inputText value="#{row.bindings.LastName.inputValue}"
    label="#{bindings.EmployeesView1.hints.LastName.label}"
    required="#{bindings.EmployeesView1.hints.LastName.mandatory}"
    columns="#{bindings.EmployeesView1.hints.LastName.displayWidth}"
    maximumLength="#{bindings.EmployeesView1.hints.LastName.precision}"
    shortDesc="#{bindings.EmployeesView1.hints.LastName.tooltip}" id="it3">
    <f:validator binding="#{row.bindings.LastName.validator}"/>
    </af:inputText>
    </af:column>
    <af:column sortProperty="#{bindings.EmployeesView1.hints.DepartmentId.name}" sortable="false"
    headerText="#{bindings.EmployeesView1.hints.DepartmentId.label}" id="c11">
    <af:selectOneChoice value="#{row.bindings.DepartmentId.inputValue}" label="#{row.bindings.DepartmentId.label}"
    required="#{bindings.EmployeesView1.hints.DepartmentId.mandatory}"
    shortDesc="#{bindings.EmployeesView1.hints.DepartmentId.tooltip}" id="soc1">
    <f:selectItems value="#{row.bindings.DepartmentId.items}" id="si1"/>
    </af:selectOneChoice>
    </af:column>
    </af:table>
    </af:panelBox>
    Thanks,
    Rajdeep

    Hi Frank,
    Indeed it worked. But I have two queries now :
    1. We are adding employee record using a method called through method action Binding. So shouldn't the bindings be aware of the same .. i mean sychonization of binding layer should happen when method action binding is used ?
    2. Why it works when i apply partialTrigger on panelBox ? Why "employeesViewImpl" code is not required when I apply partialTrigger on panelBox ? Is it a concept that iterator is reexecuted when you refresh parent component ?
    Thanks,
    Rajdeep

  • ADF Table filter issue with OR or AND input value

    Hi all,
    adf:table filterable fields for OR or AND input value not works. Actually One of column is for State and it has "OR" value for -> OREGON State.
    and I tried using filterModel and queryListener for table attribute. But I am not getting exact clue where I need to fix for this issue. Any suggestion and help is appreciated greatly.
    jdev version 11.1.1.3
    Thank you.
    - Robin

    Something like this might work for the one case:
    public void handleQuery(QueryEvent queryEvent){
        // Replace the OR with an equivalent condition
        Map m =
          ((FilterableQueryDescriptor) (queryEvent.getDescriptor())).getFilterCriteria();
        for (Map.Entry entry: (Collection<Map.Entry>) m.entrySet())
          if (entry.getValue() != null &&
              StringUtils.equalsIgnoreCase(entry.getValue().toString(), "OR"))
            entry.setValue("O AND _R");
        // Process The Query
        ELUtils.invokeMethod("#{bindings.VOQuery.processQuery}",
                             QueryEvent.class, queryEvent);
        // Put the OR back
        for (Map.Entry entry: (Collection<Map.Entry>) m.entrySet())
          if (entry.getValue() != null &&
              StringUtils.equalsIgnoreCase(entry.getValue().toString(),
                                           "O AND _R"))
            entry.setValue("OR");
    }

  • Scrollbar refresh issue in ADF Table

    Hello, All
    We have an issue regarding the ADF Tables. Please let me know if it is a Oracle bug. All of us know that 'ExecuteQuery' operation refreshes the cache in View Objects.
    But, based on our testing results, there might be a table refresh issue on vertical scrollbars after this opertion is executed.
    Settings:
    In the attached example project, we have a ADF RichTable included in a PanelCollection.
    In addition, We set 'AutoHeightRows' property on this ADF RichTable in order to show scrollbars on the PanelCollection.
    Furthremore, a standard CommandButton is created on the toolbar to execute queries.
    Experimental Steps:
    1. Use your mouse to move the vertical scrollbar to around the center of its range. This behavior causes the scrollbar scrolling vertically.
    2. Click on any row showing in the table right now, make it to be the active row.
    3. Press the 'ExecuteQuery' button, waiting for the table refresh.
    Results:
    1. Active row moves to the first row in the rowset.
    2. Vertical scrollbar stay in the center of its range without moving to the first row.
    3. The first row is hidden from end users. The user can not see the active row in this case.
    FYI:
    The attached project can be accessed from the following link:
    http://www.4shared.com/zip/Xn4Ki0DP/Application3.html
    In this project, we tried to set 'partialTriggers' on RichTable and its surrounding PanelCollection separately. But, the refreshing issue still exists.
    Regards,
    David He

    Welcome David to forums.
    Always mention your exact Jdev version. For more information read this: https://forums.oracle.com/forums/ann.jspa?annID=56
    I too faced the similar kind of issue in one of my application.
    As you have not mentioned the exact jdev version, I will tell you what I did in my application which was developed using Jdev 11.1.2.0
    After the VO is executed, you can write the below line of code to show the first rows in the table.
    applicationsRichTable.setDisplayRow(applicationsRichTable.DISPLAY_ROW_FIRST);
    //applicationRichTable is the binding for the RichTable in managed beanHope it helps.

  • ADF Table vertical scroll issue in Chrome & Safari, works fine in FF & IE

    Hi,
    Jdeveloper 11.1.1.7.0
    ADF BC & ADF Faces
    I have a jspx page with a command link. On click of link, opening a popup. Displaying a ADF table inside popup dialog.
    Problem Statement :   I have set contentDelivery="immediate" & autoHeightRows="8" in ADF table. while running the application in Chrome & Safari and moving vertical scroll up & down rapidly, first few rows & last few rows are not visible respectively. But if i scroll up & down using scroll arrow it's working as expected.
    But there is NO issue while running the application in IE & FF and moving vertical scroll up & down rapidly.
    FF 26.0
    Safari 5.1.7
    IE 8.0
    Chrome 31.0.1650.63 m
    JSPX Code :
    [code]
    <?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">
          <af:messages id="m1"/>
          <af:form id="f1">
            <af:commandLink text="Customize" id="cl1">
              <af:showPopupBehavior popupId="p1" triggerType="action"/>
            </af:commandLink>
            <af:popup id="p1">
              <af:dialog id="d2" type="none">
                <af:panelGroupLayout id="pgl1">
                  <af:table value="#{bindings.XXXXView1.collectionModel}"
                            var="row"
                            rows="#{bindings.XXXXView1.rangeSize}"
                            emptyText="#{bindings.XXXXView1.viewable ? 'No data to display.' : 'Access Denied.'}"
                            fetchSize="#{bindings.XXXXView1.rangeSize}"
                            rowBandingInterval="0" id="t1" autoHeightRows="8"
                            contentDelivery="immediate">
                    <af:column sortProperty="#{bindings.XXXXView1.hints.ProductOrder.name}"
                               sortable="false"
                               headerText="#{bindings.XXXXView1.hints.ProductOrder.label}"
                               id="c4">
                      <af:inputText value="#{row.bindings.ProductOrder.inputValue}"
                                    label="#{bindings.XXXXView1.hints.ProductOrder.label}"
                                    required="#{bindings.XXXXView1.hints.ProductOrder.mandatory}"
                                    columns="#{bindings.XXXXView1.hints.ProductOrder.displayWidth}"
                                    maximumLength="#{bindings.XXXXView1.hints.ProductOrder.precision}"
                                    shortDesc="#{bindings.XXXXView1.hints.ProductOrder.tooltip}"
                                    id="it1">
                        <f:validator binding="#{row.bindings.ProductOrder.validator}"/>
                        <af:convertNumber groupingUsed="false"
                                          pattern="#{bindings.XXXXView1.hints.ProductOrder.format}"/>
                      </af:inputText>
                    </af:column>
                    <af:column sortProperty="#{bindings.XXXXView1.hints.SerialNo.name}"
                               sortable="false"
                               headerText="#{bindings.XXXXView1.hints.SerialNo.label}"
                               id="c2">
                      <af:inputText value="#{row.bindings.SerialNo.inputValue}"
                                    label="#{bindings.XXXXView1.hints.SerialNo.label}"
                                    required="#{bindings.XXXXView1.hints.SerialNo.mandatory}"
                                    columns="#{bindings.XXXXView1.hints.SerialNo.displayWidth}"
                                    maximumLength="#{bindings.XXXXView1.hints.SerialNo.precision}"
                                    shortDesc="#{bindings.XXXXView1.hints.SerialNo.tooltip}"
                                    id="it5">
                        <f:validator binding="#{row.bindings.SerialNo.validator}"/>
                      </af:inputText>
                    </af:column>
                    <af:column sortProperty="#{bindings.XXXXView1.hints.SystemId.name}"
                               sortable="false"
                               headerText="#{bindings.XXXXView1.hints.SystemId.label}"
                               id="c1">
                      <af:inputText value="#{row.bindings.SystemId.inputValue}"
                                    label="#{bindings.XXXXView1.hints.SystemId.label}"
                                    required="#{bindings.XXXXView1.hints.SystemId.mandatory}"
                                    columns="#{bindings.XXXXView1.hints.SystemId.displayWidth}"
                                    maximumLength="#{bindings.XXXXView1.hints.SystemId.precision}"
                                    shortDesc="#{bindings.XXXXView1.hints.SystemId.tooltip}"
                                    id="it2">
                        <f:validator binding="#{row.bindings.SystemId.validator}"/>
                      </af:inputText>
                    </af:column>
                    <af:column sortProperty="#{bindings.XXXXView1.hints.SystemName.name}"
                               sortable="false"
                               headerText="#{bindings.XXXXView1.hints.SystemName.label}"
                               id="c5">
                      <af:inputText value="#{row.bindings.SystemName.inputValue}"
                                    label="#{bindings.XXXXView1.hints.SystemName.label}"
                                    required="#{bindings.XXXXView1.hints.SystemName.mandatory}"
                                    columns="#{bindings.XXXXView1.hints.SystemName.displayWidth}"
                                    maximumLength="#{bindings.XXXXView1.hints.SystemName.precision}"
                                    shortDesc="#{bindings.XXXXView1.hints.SystemName.tooltip}"
                                    id="it3">
                        <f:validator binding="#{row.bindings.SystemName.validator}"/>
                      </af:inputText>
                    </af:column>
                    <af:column sortProperty="#{bindings.XXXXView1.hints.ModelNumber.name}"
                               sortable="false"
                               headerText="#{bindings.XXXXView1.hints.ModelNumber.label}"
                               id="c3">
                      <af:inputText value="#{row.bindings.ModelNumber.inputValue}"
                                    label="#{bindings.XXXXView1.hints.ModelNumber.label}"
                                    required="#{bindings.XXXXView1.hints.ModelNumber.mandatory}"
                                    columns="#{bindings.XXXXView1.hints.ModelNumber.displayWidth}"
                                    maximumLength="#{bindings.XXXXView1.hints.ModelNumber.precision}"
                                    shortDesc="#{bindings.XXXXView1.hints.ModelNumber.tooltip}"
                                    id="it4">
                        <f:validator binding="#{row.bindings.ModelNumber.validator}"/>
                      </af:inputText>
                    </af:column>
                  </af:table>
                </af:panelGroupLayout>
              </af:dialog>
            </af:popup>
          </af:form>
        </af:document>
      </f:view>
    </jsp:root>
    [/code]
    Any help will be appreciated.
    ~Abhijit

    Hi,
    We are seeing this behaviour too - JDEV 11.1.1.7 with WLS 10.3.6.
    Anybody got any suggestions?
    Thanks
    Jon

  • Issue Using CreateInsert to Add Row to ADF Table

    I am using JDev 11.1.2 and have a pretty simple application. The application contains tabs and each tab displays a page fragment. In each page fragment, I have a panelstretch layout. In the top facet I have a form and in the center facet I have a table. I am having an issue once deploying to a standalone WLS server. It works as desired when run locally through the integrated wls. User clicks CreateInsert button and it clears the form and inserts a blank into the table. User clicks Commit and the data appears in the adf table. Pretty simple and straight forward. However, when deployed to the standalone wls the user clicks CreateInsert button the form clears and all the rows in the adf table disappear. I can reload the page and then the rows appear, including the blank one. I have tested this in IE 8 (both in and out of compatibility mode), Firefox 12, and Chrome and get the same results.
    I have one page fragment that it works correctly on when deployed to standalone WLS. All other fragements behave like I described above. I compared the jsff, pagedef, and view objects. I do not see any difference between them. I posted the jsff code below, but I can also post the pagedef code if needed. Any direction on how to resolve this would be great. Am I missing something obvious?? Thanks for any help or advice you can lend!
    ******Working jsff*****
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
    xmlns:f="http://java.sun.com/jsf/core">
    <af:panelStretchLayout id="psl1" styleClass="AFStretchWidth" startWidth="0px" topHeight="185px" bottomHeight="0px"
    endWidth="0px" dimensionsFrom="auto">
    <f:facet name="bottom"/>
    <f:facet name="center">
    <af:panelGroupLayout id="pgl1" layout="scroll">
    <af:panelCollection id="pc1" styleClass="AFStretchWidth">
    <f:facet name="menus">
    <af:menu text="Print Menu" id="m1">
    <af:commandLink text="Print Notes" id="cl1" useWindow="true" partialSubmit="true">
    <af:setActionListener from="au_notes" to="#{pageFlowScope.jrxml}"/>
    <af:fileDownloadActionListener contentType="application/pdf" filename="Report"
    method="#{JasperBean.printreport}"/>
    </af:commandLink>
    </af:menu>
    </f:facet>
    <f:facet name="toolbar">
    <af:toolbar id="t2">
    <af:commandButton actionListener="#{bindings.CreateInsert.execute}" text="Insert"
    disabled="#{!bindings.CreateInsert.enabled}" id="cb2"/>
    <af:commandButton actionListener="#{bindings.Delete.execute}" text="Delete"
    disabled="#{!bindings.Delete.enabled}" id="cb3"/>
    </af:toolbar>
    </f:facet>
    <f:facet name="statusbar"/>
    <af:table value="#{bindings.TAuOrgNotesView1.collectionModel}" var="row"
    rows="#{bindings.TAuOrgNotesView1.rangeSize}"
    emptyText="#{bindings.TAuOrgNotesView1.viewable ? 'No data to display.' : 'Access Denied.'}"
    fetchSize="#{bindings.TAuOrgNotesView1.rangeSize}" rowBandingInterval="0"
    selectedRowKeys="#{bindings.TAuOrgNotesView1.collectionModel.selectedRow}"
    selectionListener="#{bindings.TAuOrgNotesView1.collectionModel.makeCurrent}" rowSelection="single"
    id="t1" styleClass="AFStretchWidth" partialTriggers="::cb2 ::cb3 :::cb1" autoHeightRows="10">
    <af:column sortProperty="#{bindings.TAuOrgNotesView1.hints.NoteDate.name}" sortable="false"
    headerText="#{bindings.TAuOrgNotesView1.hints.NoteDate.label}" id="c1" width="60">
    <af:outputText value="#{row.NoteDate}" id="ot1">
    <af:convertDateTime pattern="#{bindings.TAuOrgNotesView1.hints.NoteDate.format}"/>
    </af:outputText>
    </af:column>
    <af:column sortProperty="#{bindings.TAuOrgNotesView1.hints.NoteInitials.name}" sortable="false"
    headerText="#{bindings.TAuOrgNotesView1.hints.NoteInitials.label}" id="c2" width="60">
    <af:outputText value="#{row.NoteInitials}" id="ot2"/>
    </af:column>
    <af:column sortProperty="#{bindings.TAuOrgNotesView1.hints.NoteNote.name}" sortable="false"
    headerText="#{bindings.TAuOrgNotesView1.hints.NoteNote.label}" id="c3" width="700" noWrap="true">
    <af:outputText value="#{row.NoteNote}" id="ot3"/>
    </af:column>
    </af:table>
    </af:panelCollection>
    </af:panelGroupLayout>
    </f:facet>
    <f:facet name="start"/>
    <f:facet name="end"/>
    <f:facet name="top">
    <af:panelBox text="Note Info" id="pb1" rendered="#{bindings.NoteSeqNumber.inputValue!=null}">
    <f:facet name="toolbar">
    <af:commandButton actionListener="#{bindings.Commit.execute}" text="Save" id="cb1" partialSubmit="true"/>
    </f:facet>
    <af:panelGroupLayout layout="horizontal" id="pgl2" valign="top"
    rendered="#{bindings.NoteSeqNumber.inputValue!=null}">
    <af:panelFormLayout id="pfl1">
    <af:inputText value="#{bindings.NoteSeqNumber.inputValue}" label="#{bindings.NoteSeqNumber.hints.label}"
    required="#{bindings.NoteSeqNumber.hints.mandatory}"
    columns="#{bindings.NoteSeqNumber.hints.displayWidth}"
    maximumLength="#{bindings.NoteSeqNumber.hints.precision}"
    shortDesc="#{bindings.NoteSeqNumber.hints.tooltip}" id="it1" visible="false">
    <f:validator binding="#{bindings.NoteSeqNumber.validator}"/>
    <af:convertNumber groupingUsed="false" pattern="#{bindings.NoteSeqNumber.format}"/>
    </af:inputText>
    <af:inputDate value="#{bindings.NoteDate.inputValue}" label="#{bindings.NoteDate.hints.label}"
    required="#{bindings.NoteDate.hints.mandatory}"
    columns="#{bindings.NoteDate.hints.displayWidth}"
    shortDesc="#{bindings.NoteDate.hints.tooltip}" id="id1">
    <f:validator binding="#{bindings.NoteDate.validator}"/>
    <af:convertDateTime pattern="#{bindings.NoteDate.format}"/>
    </af:inputDate>
    <af:selectOneChoice value="#{bindings.NoteInitials.inputValue}" label="#{bindings.NoteInitials.label}"
    required="#{bindings.NoteInitials.hints.mandatory}"
    shortDesc="#{bindings.NoteInitials.hints.tooltip}" id="soc1">
    <f:selectItems value="#{bindings.NoteInitials.items}" id="si1"/>
    </af:selectOneChoice>
    <af:inputText value="#{bindings.NoteNote.inputValue}" label="#{bindings.NoteNote.hints.label}"
    required="#{bindings.NoteNote.hints.mandatory}" columns="105"
    maximumLength="#{bindings.NoteNote.hints.precision}"
    shortDesc="#{bindings.NoteNote.hints.tooltip}" id="it2" rows="5">
    <f:validator binding="#{bindings.NoteNote.validator}"/>
    </af:inputText>
    </af:panelFormLayout>
    <af:panelFormLayout id="pfl2" rows="2" maxColumns="2">
    <f:facet name="footer"/>
    <af:inputText value="#{bindings.NoteCreatedBy.inputValue}" label="#{bindings.NoteCreatedBy.hints.label}"
    required="#{bindings.NoteCreatedBy.hints.mandatory}"
    columns="#{bindings.NoteCreatedBy.hints.displayWidth}"
    maximumLength="#{bindings.NoteCreatedBy.hints.precision}"
    shortDesc="#{bindings.NoteCreatedBy.hints.tooltip}" id="it3">
    <f:validator binding="#{bindings.NoteCreatedBy.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.NoteModifiedBy.inputValue}" label="#{bindings.NoteModifiedBy.hints.label}"
    required="#{bindings.NoteModifiedBy.hints.mandatory}"
    columns="#{bindings.NoteModifiedBy.hints.displayWidth}"
    maximumLength="#{bindings.NoteModifiedBy.hints.precision}"
    shortDesc="#{bindings.NoteModifiedBy.hints.tooltip}" id="it4">
    <f:validator binding="#{bindings.NoteModifiedBy.validator}"/>
    </af:inputText>
    <af:inputDate value="#{bindings.NoteDateCreated.inputValue}" label="#{bindings.NoteDateCreated.hints.label}"
    required="#{bindings.NoteDateCreated.hints.mandatory}"
    columns="#{bindings.NoteDateCreated.hints.displayWidth}"
    shortDesc="#{bindings.NoteDateCreated.hints.tooltip}" id="id2">
    <f:validator binding="#{bindings.NoteDateCreated.validator}"/>
    <af:convertDateTime pattern="#{bindings.NoteDateCreated.format}"/>
    </af:inputDate>
    <af:inputDate value="#{bindings.NoteDateModified.inputValue}"
    label="#{bindings.NoteDateModified.hints.label}"
    required="#{bindings.NoteDateModified.hints.mandatory}"
    columns="#{bindings.NoteDateModified.hints.displayWidth}"
    shortDesc="#{bindings.NoteDateModified.hints.tooltip}" id="id3">
    <f:validator binding="#{bindings.NoteDateModified.validator}"/>
    <af:convertDateTime pattern="#{bindings.NoteDateModified.format}"/>
    </af:inputDate>
    </af:panelFormLayout>
    </af:panelGroupLayout>
    </af:panelBox>
    </f:facet>
    </af:panelStretchLayout>
    </jsp:root>
    *** Non Working jsff****
    <?xml version='1.0' encoding='UTF-8'?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1" xmlns:af="http://xmlns.oracle.com/adf/faces/rich"
    xmlns:f="http://java.sun.com/jsf/core">
    <af:panelStretchLayout id="psl1" styleClass="AFStretchWidth" startWidth="0px" topHeight="125px" bottomHeight="0px"
    endWidth="0px" dimensionsFrom="auto">
    <f:facet name="bottom"/>
    <f:facet name="center">
    <af:panelGroupLayout id="pgl1" layout="scroll">
    <af:panelCollection id="pc1" styleClass="AFStretchWidth">
    <f:facet name="menus"/>
    <f:facet name="toolbar">
    <af:toolbar id="t2">
    <af:commandButton actionListener="#{bindings.CreateInsert.execute}" text="Insert"
    disabled="#{!bindings.CreateInsert.enabled}" id="cb1"/>
    <af:commandButton actionListener="#{bindings.Delete.execute}" text="Delete"
    disabled="#{!bindings.Delete.enabled}" id="cb3"/>
    </af:toolbar>
    </f:facet>
    <f:facet name="statusbar"/>
    <af:table value="#{bindings.TAuInvestigatorsView1.collectionModel}" var="row"
    rows="#{bindings.TAuInvestigatorsView1.rangeSize}"
    emptyText="#{bindings.TAuInvestigatorsView1.viewable ? 'No data to display.' : 'Access Denied.'}"
    fetchSize="#{bindings.TAuInvestigatorsView1.rangeSize}" rowBandingInterval="0"
    selectedRowKeys="#{bindings.TAuInvestigatorsView1.collectionModel.selectedRow}"
    selectionListener="#{bindings.TAuInvestigatorsView1.collectionModel.makeCurrent}" rowSelection="single"
    id="t1" styleClass="AFStretchWidth" partialTriggers="::cb1 ::cb3 :::cb2" autoHeightRows="10">
    <af:column sortProperty="#{bindings.TAuInvestigatorsView1.hints.InvFirstName.name}" sortable="false"
    headerText="#{bindings.TAuInvestigatorsView1.hints.InvFirstName.label}" id="c1" width="60">
    <af:outputText value="#{row.InvFirstName}" id="ot1"/>
    </af:column>
    <af:column sortProperty="#{bindings.TAuInvestigatorsView1.hints.InvLastName.name}" sortable="false"
    headerText="#{bindings.TAuInvestigatorsView1.hints.InvLastName.label}" id="c2">
    <af:outputText value="#{row.InvLastName}" id="ot2"/>
    </af:column>
    <af:column sortProperty="#{bindings.TAuInvestigatorsView1.hints.InvStatus.name}" sortable="false"
    headerText="#{bindings.TAuInvestigatorsView1.hints.InvStatus.label}" id="c3">
    <af:outputText value="#{row.InvStatus}" id="ot3"/>
    </af:column>
    <af:column sortProperty="#{bindings.TAuInvestigatorsView1.hints.InvInitials.name}" sortable="false"
    headerText="#{bindings.TAuInvestigatorsView1.hints.InvInitials.label}" id="c4">
    <af:outputText value="#{row.InvInitials}" id="ot4"/>
    </af:column>
    </af:table>
    </af:panelCollection>
    </af:panelGroupLayout>
    </f:facet>
    <f:facet name="start"/>
    <f:facet name="end"/>
    <f:facet name="top">
    <af:panelBox text="Investigator Info" id="pb1">
    <f:facet name="toolbar">
    <af:group id="g1">
    <af:commandButton actionListener="#{bindings.Commit.execute}" text="Save" id="cb2" partialSubmit="true"/>
    </af:group>
    </f:facet>
    <af:panelFormLayout id="pfl1" maxColumns="2" rows="2">
    <af:inputText value="#{bindings.InvFirstName.inputValue}" label="#{bindings.InvFirstName.hints.label}"
    required="#{bindings.InvFirstName.hints.mandatory}"
    columns="#{bindings.InvFirstName.hints.displayWidth}"
    maximumLength="#{bindings.InvFirstName.hints.precision}"
    shortDesc="#{bindings.InvFirstName.hints.tooltip}" id="it1">
    <f:validator binding="#{bindings.InvFirstName.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.InvLastName.inputValue}" label="#{bindings.InvLastName.hints.label}"
    required="#{bindings.InvLastName.hints.mandatory}"
    columns="#{bindings.InvLastName.hints.displayWidth}"
    maximumLength="#{bindings.InvLastName.hints.precision}"
    shortDesc="#{bindings.InvLastName.hints.tooltip}" id="it2">
    <f:validator binding="#{bindings.InvLastName.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.InvStatus.inputValue}" label="#{bindings.InvStatus.hints.label}"
    required="#{bindings.InvStatus.hints.mandatory}"
    columns="#{bindings.InvStatus.hints.displayWidth}"
    maximumLength="#{bindings.InvStatus.hints.precision}"
    shortDesc="#{bindings.InvStatus.hints.tooltip}" id="it3">
    <f:validator binding="#{bindings.InvStatus.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.InvInitials.inputValue}" label="#{bindings.InvInitials.hints.label}"
    required="#{bindings.InvInitials.hints.mandatory}"
    columns="#{bindings.InvInitials.hints.displayWidth}"
    maximumLength="#{bindings.InvInitials.hints.precision}"
    shortDesc="#{bindings.InvInitials.hints.tooltip}" id="it4">
    <f:validator binding="#{bindings.InvInitials.validator}"/>
    </af:inputText>
    </af:panelFormLayout>
    <af:panelFormLayout id="pfl2" maxColumns="2" rows="2">
    <f:facet name="footer"/>
    <af:inputText value="#{bindings.InvCreatedBy.inputValue}" label="#{bindings.InvCreatedBy.hints.label}"
    required="#{bindings.InvCreatedBy.hints.mandatory}"
    columns="#{bindings.InvCreatedBy.hints.displayWidth}"
    maximumLength="#{bindings.InvCreatedBy.hints.precision}"
    shortDesc="#{bindings.InvCreatedBy.hints.tooltip}" id="it5">
    <f:validator binding="#{bindings.InvCreatedBy.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.InvModifiedBy.inputValue}" label="#{bindings.InvModifiedBy.hints.label}"
    required="#{bindings.InvModifiedBy.hints.mandatory}"
    columns="#{bindings.InvModifiedBy.hints.displayWidth}"
    maximumLength="#{bindings.InvModifiedBy.hints.precision}"
    shortDesc="#{bindings.InvModifiedBy.hints.tooltip}" id="it6">
    <f:validator binding="#{bindings.InvModifiedBy.validator}"/>
    </af:inputText>
    <af:inputDate value="#{bindings.InvDateCreated.inputValue}" label="#{bindings.InvDateCreated.hints.label}"
    required="#{bindings.InvDateCreated.hints.mandatory}"
    columns="#{bindings.InvDateCreated.hints.displayWidth}"
    shortDesc="#{bindings.InvDateCreated.hints.tooltip}" id="id1">
    <f:validator binding="#{bindings.InvDateCreated.validator}"/>
    <af:convertDateTime pattern="#{bindings.InvDateCreated.format}"/>
    </af:inputDate>
    <af:inputDate value="#{bindings.InvDateModified.inputValue}" label="#{bindings.InvDateModified.hints.label}"
    required="#{bindings.InvDateModified.hints.mandatory}"
    columns="#{bindings.InvDateModified.hints.displayWidth}"
    shortDesc="#{bindings.InvDateModified.hints.tooltip}" id="id2">
    <f:validator binding="#{bindings.InvDateModified.validator}"/>
    <af:convertDateTime pattern="#{bindings.InvDateModified.format}"/>
    </af:inputDate>
    </af:panelFormLayout>
    </af:panelBox>
    </f:facet>
    </af:panelStretchLayout>
    </jsp:root>

    This is too much code to digest, and it's not formatted (read the FAQ https://forums.oracle.com/forums/help.jspa to find out how to do this).
    So some general remarks: as it runs on your embedded WLS but not on a stand alone server it might be a configuration mismatch. Have you made sure that the standalone WLS runs the exact adf runtime libraries our jdev is using?
    Any errors in the log file on the standalone server?
    Have you tried to switch the tab order to find out if the problem is still on the not working jsff?
    Timo

  • Strange issue with ADF table in chrome browser

    I have ADF table which should display 23 rows, but only 20 rows are visible in chrome browser, but other browsers like IE, firefox displays the 23 rows correctly. I have used default ADF table with Drag&drop behaviour in this table. All the 23 rows exported correctly to Excel with export to Excel behaviour and inspect page source also shows all the rows in Chrome browser, but display in the adf is only problem in chrome browser. We're having a production issue with this, any ideas are appreciated.
    Thanks,
    Surya

    Hi All,
    Is this issue fixed yet? There are a couple of threads reporting this issue and the original thread has been Archived. It is a real issue, and it remains an issue. The Chrome browser cuts off the last row of a table in the display. IE displays the row correctly. I am working with JDev 12.1.2 and I am building an application using ADF Tables. Without exception, on every page that has one, the last row of the table is cut off from display in a very ugly way and you cannot scroll down to display the full row. I have tried wrapping the table in a Panel Collection - same result, I have tried setting the height of the table - same result. I have tried surrounding the table with a PanelGroupLayout component (layout set to scroll) - same result. I have even tried surrounding the table with a PanelHeaderComponent component, Type set to both default and Stretch - yes, you guessed it, same result! I've even put the table in the middle of a PanelStretchLayout component - but the last row is always cut off.
    This should be easy for you to reproduce, just drop a data control on a ADF page and select a table. When you view it in the Chrome browser and you will see what I'm talking about. I'm using Google Chrome version 31.0.1650.63 m.
    I have experimented with AFStretchWidth and AutoHeightRows (as suggested by previous threads), nothing seems to work.
    Here's another suggestion, if the forum would allow you to insert an image, I could actually show you what I'm talking about. Food for thought perhaps?
    Best regards,
    Nigel
    "Life's too short not to use ADF"

  • ADF Table: SelectOneChoice Issue

    Hi ,
    I need help with ADF tables:
    The scenario is :
    I am displaying an ADF table on our form. (selection table, usercan select one row)
    • Status (active, pending , inactive)
    • Test Details
    These 2 column values get populated from database.
    The table has 2 more columns
    • New Status --> SelectOneChoice
    • Status Change Reason --> input text, render false
    Issue:
    When ever user selects New Status as Inactive from SelectOneChoice, the Status Change Reason, input text should get rendered true.
    For this I did following
    SelectOneChoice autosubmit to true
    put partial trigger on column Status Change Reason (SelectOneChoice id)
    Wrote EL for Render true
    But whenever I change value of SelectOneChoice to "Inactive", the input text doesn't get rendered to true :(
    But if i select any row then Input Text in Status Change Reason column is displayed for the row where value of SelectOneChoice is "Inactive".
    Please help on this....
    Dont know why is it not working :(

    did you try like this in the value change listener?
    public void selectOneChoice1_valueChangeListener(ValueChangeEvent eve) {
    DCIteratorBinding listIter = getBindingsForDCB().findIteratorBinding("StatusViewObj1Iterator");
    int curIndex = (Integer)eve.getNewValue();
    Row datRow = listIter.getRowAtRangeIndex(curIndex);
    String name = (String)datRow.getAttribute("status");
    if (name != null && name.equals("inactive"){
    inputText1.setRendered(Boolean.FALSE);
    RequestContext.getCurrentInstance().addPartialTarget(inputText1);
    Edited by: puthanampatti on Mar 3, 2009 8:20 PM

  • Issue while reflecting the data to ADF form from ADF Table

    Hi All,
    I have one scenario as follows:
    I have to open a form in entry mode. So I have used a Method Call activity in task flow to call "Create" in method call activity.
    Then form opens in a entry mode. I have a adf table in the page showing the entered data.
    When form opens in entry mode, instead of entering the values in the field User selects a record in ADF table, but due to the create mode of the form it will through me a error to fill mandatory fields.
    Please tell me the way so that if user selects the record(in adf table) instead of entering new record, the value would reflect in the Adf form.
    If I use a roll back on selecting the row of ADF table, then it is showing me this error "Row currency has changed since the user interface was rendered. The expected row key was oracle.jbo.Key[null ]" because there will be no row key in the cache when form opens.
    Please suggest me the way to complete the task.
    I am using jdeveloper 11.1.2.1.0
    Thanks,
    Gobi
    Edited by: gobinkl on Oct 3, 2012 2:06 AM

    no no your are complicating yourself. :) better your should provide your usecase.
    first thing: go through the books & also adf blogs learn and understand the framework. as above person said.
    i hope that you had method call create as activity as default while page rendering it make your af: form empty(that is ready fir insertion format).
    so if your are doing like that.am sure it will throw some mandatory errors.
    error will not resolve unless without entering any data's.
    coming af:table why are using af:table - immediate = true / false(switching).
    immediate = true - skip over validation or by pass some validation in some phase - based on the component which you are using. (say as if you are using editable value holder,af:coomand button).
    grab the information here in an more legible manner.
    http://adfpractice-fedor.blogspot.in/2012/02/understanding-immediate-attribute.html
    let me know your usecase.
    this will assist you
    https://blogs.oracle.com/shay/entry/executing_an_action_on_jsf_pag
    http://tanveeroracle.blogspot.in/2009/09/adf-11g-createinsert-to-display-blank.html
    Edited by: user707 on Oct 5, 2012 9:02 AM

Maybe you are looking for