ADF VO Row Fetch Range Issue: Action is not called after 10th row

Hi People!
I am working with an Application here in which one page has a table based on a view object. This table has range navigation, and the VO configuration for Tuning is to fetch rows in batches of 1000, all in one fetch. Now, i have a single selection configured in this table, and also a button on the <tableActions> facet which calls a method on the backing bean.
The problem is, for the first 10 rows of this table, the method is called (seen through the debugger), but when we move the selection to the 11th row or further, the page only refreshes but does not call the method.
This is not a problem with the data, because we tried two other approaches:
1) removed the range navigation and shown all the records in the same page: the error persists for the 11th row ahead
2) changed the VO query to return only the 11th row from the previous test using its ID: the action is called, now that the row is the first on the rowset.
Have you experienced similar behavior? Why the Action is not executed when the selected row comes after the tenth row?
Any help is greatly appreciated!
Regards
Thiago Souza

Hi Frank, thanks for the reply.
I have assembled a step-by-step based on the HR schema. For this example, i have created an EmployeesVO based on the EMPLOYEES table, and an App Module to provide a data control. From then on:
1) Create a JSF JSP to list the Employees VO
1.1) Bind the JSF Page to a Backing bean
1.2) Create an af:page element on the page
2) Drag the EmployeesVO from the Data Control Palette to the af:page
2.1) Read-Only Table, Selection Enabled
2.2) Do not include table navigation.
3) Double-Click the automatically created submit button on the TableSelectOne section
3.1) Bind it to a method on the Backing Bean
3.2) Add some code to it, in my case i tested:
     FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Teste"));
4) Run the example and try two approaches:
4.1) select one of the first ten rows and click on the button: The action is fired.
4.2) select the eleventh row and click on the button: The action is not fired.
4.3) select one of the first ten rows again and click on the button: The action is fired.
This example didn't even include range navigation, but if you want to test you will see the result is the same.
Please let me know if you want further info.
Thanks a lot!
Thiago Souza

Similar Messages

  • Why iCal cancel of event edits issue is still not fixed after over 2 years?

    Why iCal "cancel of event edits" issue is still not fixed after over 2 years?
    I have been in the software engineering industry for over 14 years, but I have never seen a large corporation being so slow at addressing major issues like these.
    What would it take for Apple to start working on this issue?

    Yup. This is fully ridiculous that you can't cancel your updates once you start. I love the tool but this is on pretty significant issue.
    Sometimes I accidentally move a mtg or make some edit while viewing and you can't back you!!
    If you feel the same way, you should post a note here:
    http://www.apple.com/feedback/ical.html
    Message was edited by: SteveMc10123

  • Action method not called in Backing Bean

    I am using <x:inputFileUpload> tag inside my jsp page. I am trying to call action method when clicking button, but action method not called.
    My jsp page:
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    <%@ taglib uri="http://myfaces.apache.org/extensions" prefix="x"%>
    <html>
         <head>
              <title>File upload Test</title>
         </head>
         <body>
              <f:view>
                   <h:form id="form1" enctype="multipart/form-data">
                        <h:messages id="asdghsda"/>          
                        <h:outputText value="This is file upload page functionlaity POC" />                                   
                        <h:inputText value="#{fileUploadBean.textField}" />
                        <x:inputFileUpload id="myFileId" value="#{fileUploadBean.myFile}" storage="file" required="true"/>                    
                        <h:commandButton action="#{fileUploadBean.storeFile}" value="Enter here" />                    
                        <h:commandLink value="Clicl Here!!" action="#{fileUploadBean.storeFile}"></h:commandLink>
                   </h:form>               
              </f:view>
         </body>     
    </html>
    My backing bean:
    package com.beans;
    import java.io.BufferedInputStream;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import org.apache.log4j.Logger;
    import org.apache.myfaces.custom.fileupload.UploadedFile;
    public class FileUploadBean {     
         private static Logger logger = Logger.getLogger(FileUploadBean.class.getName());
         private String textField;
         private UploadedFile myFile;
         public UploadedFile getMyFile() {
              logger.info("inside get method");
         return myFile;
         public void setMyFile(UploadedFile myFile) {
              logger.info("inside set method");
              this.myFile = myFile;
         public void storeFile(){          
              logger.info("Inside the storeFile method");
              logger.info("The text field value: " + getTextField());
              try {
                   InputStream in = new BufferedInputStream(myFile.getInputStream());
                   logger.info("The string is: " + in.read());
                   System.out.println(in.read());
                   File f = new File("D:\\share\\sample.txt");               
                   OutputStream out = new FileOutputStream(f);
                   out.write(in.read());
              } catch (IOException e) {
                   // TODO Auto-generated catch block
                   e.printStackTrace();
              logger.info("Exit from the storeFile method");
         public String getTextField() {
              return textField;
         public void setTextField(String textField) {
              this.textField = textField;
    My web.xml file:
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <display-name>MyJSFProject</display-name>
    <context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>server</param-value>
    </context-param>
    <filter>
    <filter-name>ExtensionsFilter</filter-name>
    <filter-class>org.apache.myfaces.component.html.util.ExtensionsFilter</filter-class>
    <init-param>
    <param-name>uploadMaxFileSize</param-name>
    <param-value>10m</param-value>
    </init-param>
    <init-param>
    <param-name>uploadThresholdSize</param-name>
    <param-value>100k</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>ExtensionsFilter</filter-name>
    <servlet-name>FacesServlet</servlet-name>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    </web-app>
    Can someone help me on this? I need urgently.

    One straight and simple answer which i can give you method associated to action attributes always returns a java.lang.String Object.
    REF :
    action:
    =====
    If specified as a string: Directly specifies an outcome used by the navigation handler to determine the JSF page to load next as a result of activating the button or link If specified as a method binding: The method has this signature: String methodName(); the string represents the outcome
    source : http://horstmann.com/corejsf/jsf-tags.html#Table4_15
    therefore
    change
    public void storeFile(){
    logger.info("Inside the storeFile method");
    logger.info("The text field value: " + getTextField());
    try {
    InputStream in = new BufferedInputStream(myFile.getInputStream());
    logger.info("The string is: " + in.read());
    System.out.println(in.read());
    File f = new File("D:\\share\\sample.txt");
    OutputStream out = new FileOutputStream(f);
    out.write(in.read());
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    logger.info("Exit from the storeFile method");
    }to
    public String storeFile(){
    logger.info("Inside the storeFile method");
    logger.info("The text field value: " + getTextField());
    try {
    InputStream in = new BufferedInputStream(myFile.getInputStream());
    logger.info("The string is: " + in.read());
    System.out.println(in.read());
    File f = new File("D:\\share\\sample.txt");
    OutputStream out = new FileOutputStream(f);
    out.write(in.read());
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    logger.info("Exit from the storeFile method");
    return "success";
    }else where you can make use of actionlistener property in the following senario.
    but the method signature has to be void storeFile(ActionEvent ae)
    and could be use like
    <h:commandButton actionlistener="#{fileUploadBean.storeFile}" action="success" value="SUBMIT" /> Hope that might help :)
    REGARDS,
    RaHuL

  • CreateRowFromResultSet not called for first row

    Hi all,
    Jdev Version: 11.1.1.7.0
    I have an XML stored in DB as  a CLOB. I fetch this XML as a CLOB (using clobdomain) in my VO and need to populate a few other transient attributes. I attempted to achieve this by overriding (as per blog entry) method 'createRowFromResultSet'. I observe a weird behaviour where this method does not get invoked for the first row alone.
    A while back, I see another member suffer from a similar issue - forum thread. Is this a bug that appears when using clob and overriding this method?
    Thanks in advance,
    Srini

    Hi,
    we have the same problem. The method createRowFromResultSet() is not called for the first row. We don't have a CLOB. We have a primary key of type Raw. Maybe this is causing the problem.
    We are using JDev 11.1.1.6.
    Regards,
    Linda

  • Button action event not call in dataprovider

    hi,
    i have JSF table and it's bound to Mysql database table. when i bound the table and run it's working properly but it's button action event is not call action. when i use static jsf table then it's table action event work properly.
    my jsp code is
    <ui:table binding="#{search.search_table}" id="search_table" lite="true" selectMultipleButton="true" sortPanelToggleButton="true"
                                style="height: 70px; left: 240px; top: 240px; position: absolute; width: 600px" title="Search Text :" visible="true" width="600">
                                <ui:tableRowGroup binding="#{search.tableRowGroup1}" id="tableRowGroup1" rows="5" sourceData="#{search.srch_tablevalDataProvider1}" sourceVar="currentRow">
                                    <!--    <ui:tableColumn headerText="Script" id="tableColumn2" width="700">
                                        <ui:staticText id="staticText4" text="#{currentRow.value['search_script']}"/>
                                    </ui:tableColumn>-->
                                    <ui:tableColumn binding="#{search.tableColumn13}" headerText="Search Word" id="tableColumn13" style="#{search.columnStyle}">
                                        <ui:staticText binding="#{search.search_word1}" id="search_word1" text="#{search.search_word1}"/>
                                    </ui:tableColumn>
                                    <ui:tableColumn binding="#{search.tableColumn4}" headerText="#{search_lang['search.contentName']}" height="39" id="tableColumn4"
                                        style="#{search.columnStyle}" width="100">
                                        <ui:staticText id="staticText1" onMouseOver="play_video(this);" text="#{currentRow.value['name']}"/>
                                    </ui:tableColumn>
                                    <ui:tableColumn binding="#{search.tableColumn6}" headerText="#{search_lang['search.srchTag']}" id="tableColumn6"
                                        sort="search_tags" style="#{search.columnStyle}">
                                        <ui:staticText id="staticText3" text="#{currentRow.value['search_tags']}"/>
                                    </ui:tableColumn>
                                    <ui:tableColumn binding="#{search.tableColumn5}" headerText="#{search_lang['search.tpDetail']}" id="tableColumn5" style="#{search.columnStyle}">
                                        <ui:imageHyperlink action="#{search.action}" id="imageHyperlink1" text="#{currentRow.value['details']}"/>
                                        <ui:button action="#{search.button2_action}" id="button2" text="Button"/>
                                    </ui:tableColumn>
                                </ui:tableRowGroup>
                             </ui:table>and back bean code is
    public String button2_action() {
            // TODO: Process the button click action. Return value is a navigation
            // case name where null will return to the same page.
            System.out.println("Invoke");
            return null;
        }i don't know what is problem there if found any solution, help me.

    You need to make sure that the getter of the datatable value returns exactly the same list in the apply request values phase of the form submit as it did during the render response phase of the initial display. Only this way JSF can find out which action which row was been invoked. Alternatively you can also place the data bean in session scope (which may have more impact), or use for example Tomahawk's t:dataTable with preserveDataModel attribute set to "true".

  • ADF - ReturnListener not called after many clicks in dialog window

    Hi all,
    I´m using ADF dialog framework to implement a re-usable pop-up search window. Everything works fine except when the user performs serveral (more than 8) searches in the pop-up window.
    When this happens the returnListener is not called and the selection is not made.
    I´m using ADF with MyFaces.
    JSP # 1:
    <af:commandLink id="btn_buscar" styleClass="lin1" partialSubmit="true" useWindow="true" windowHeight="400" windowWidth="400"
    action="#{bean1.buscarAction}" returnListener="#{bean1.cargarAL}" immediate="true" text="#{bundle.abm_general_buscar}">
    </af:commandLink>
    Bean1:
    public String buscarAction() {
    return "dialog:busqueda";
    public void cargarAL(ReturnEvent evento) {
    long idSeleccion = (Long) evento.getReturnValue();
    try{
    if (idSeleccion!=0){
    getFormulario().setId(idSeleccion);
    getFormulario().cargarRegistro(FacesUtils.getUsuarioBean().getUsuario(),true);
    }else {
    inicializar();
    catch (IExcepcion e) {
    FacesUtils.addErrorMessage(e,true);
    inicializar();
    refrescarFormulario();
    JSP # 2 (Dialog):
    <af:commandLink actionListener="#{bean2.elegirAL}" text="#{bundle.abm_general_elegir}"/>
    Bean2:
    public void elegirAL(ActionEvent e){
    AdfFacesContext afContext = AdfFacesContext.getCurrentInstance();
    afContext.returnFromDialog(getValorElegido(),null);
    afContext.getProcessScope().clear();
    I read lots of tutorials about ADF dialog framework with no luck.
    Any help will be apreciated,
    Thanks in advance.
    Gabriel

    Please see post [SOLVED] Re: ADFFaces: returnFromDialog fails to invoke return listener aft for resolution.

  • h:CommandLink : Action event not called on the first click

    Hi,
    I am facing a problem here.
    I have a JSF page:
    When I first load the page, I have few text boxes and dropdowns. With out doing anything If I click the <h:commandLink I call an action in my pagecode.
    But the problem is on the very first load of the page, without doing anything if I click on the command link action event in my pagecode is not called, but If I click on the link the second timethe pagecode actionevent is called.
    So I think tried submitting the form in the JSF page onclik of the commandlink it works in my Local IBM RAD. But doesnot work in the WebSphere Portal.
    So can you tell me if I can submit the form atleast once when the page loads for the first time
    This is my command link:
    <tr>
    <td colspan="2" align="center">
    <h:commandLink styleClass="commandLink" id="lnkBtnCreateUser" action="#{pc_Createuser.doLnkBtnCreateUserAction}">
    <hx:graphicImageEx styleClass="graphicImageEx" id="imgBtnCreateUser" value="/theme/images/btnCreateUser.gif" style="border:0;cursor:pointer" onclick="return onFormSubmit();"></hx:graphicImageEx>
    </h:commandLink>
    </td>
    </tr>
    function onFormSubmit(){
    //enabling all the disable components
    So can anybody please help me on this. Why exactly the pageCode action event is not called for the very first click ???

    seems that a prependID="false" attribute in the respective form was causing the trouble. At least it's working now that I've deleted it.
    I introduced it, because last time the component ID's messed up the output of the error/success messages ("j_id:xxx isn't that of a usefull information to the enduser).
    Edited by: stger on Apr 9, 2008 5:41 PM

  • File Upload action is not called

    I'm trying to upload file to a server and I use WDFileUpload UI control. After I select file on the client and click on 'Upload' button nothing happens. Action that assigned to that button is not called. But if FileUpload control is empty, file is not selected, action is called. Any ideas what I'm doing wrong?
    Thanks,
    Andrei

    Hi
    Hope you mustve also created value attributes of type binary and string to be bound to the data and filename properties(of the Upload UI element) respectively.
    In the 'onActionUpload'method specify the location where you want the file to be uploaded. On browsing, you get the file name in the value attribute assigned to the ‘filename’ property of FileUpload. This creates a file by this name in the sever. The contents of the file is present in the value attribute bound to data property. This is written to the file created. This happens when you click the ‘Upload’ button. The code for this is given below.
    try
    String location = "c:
    String fileName = location + wdContext.currentFileElement().getFileName();
    File file = new File(fileName);
    FileOutputStream out = new FileOutputStream(file);
    if(element.getUpload!=null)     
    out.write(element.getUpload());     
    out.close();
    Here 'element' is an object of IFileElement(IPrivateFileUploadView.IFileElement element)   'Upload' is the value attribute bound to the 'data' property of the Upload UI Element.
    Kindly revert back for further clarifications
    Regards
    Leena

  • Button action is not calling

    Hi,
    I am new to JSF.
    Here is my problem.
    I have a select one menu and command button on a page
    When ever the page loads for the first time the select one menu is loaded with the data and the button should be disabled.
    When an item is selected from the menu the button should be enabled.
    Upto this part I finished.
    Now the problem is with button.When I click the button the corresponding action method is not calling.
    If the button is enabled during page load then the action method is calling when ever I click the button.
    But I need to make the button disabled until I select an item from the
    select one menu.In this case the action method is not calling when I click the button.
    Please help me.
    Thanks in advance

    Thanks for fast response.
    Here is my jsp code:
    <script>
         function enableLoad(){
         if(document.getElementById("form1:menu1").selectedIndex==0){
         document.getElementById("form1:loadTable").value = 'true';
         else{
         document.getElementById("form1:loadTable").value = 'false';
         document.getElementById("form1").submit();
         </script>
              <h:form styleClass="form" id="form1">
              <TABLE class="tableBorder" cellspacing="10" cellpadding="10">
              <TR>
              <TD width="230" align="right">
              <SPAN class="outputtext">Select The Table To Manage:</SPAN>
              </TD>
              <TD>
              <h:selectOneMenu styleClass="selectOneMenu" id="menu1" value="#{manageReferenceTablesMB.tableValue}"
    onchange="enableLoad()">
                                  <f:selectItems value="#{manageReferenceTablesMB.tableNames}" />
                        </h:selectOneMenu>
              </TD>
              </TR>
              <TR>
              <h:inputHidden id="loadTable" value="#{manageReferenceTablesMB.loadTable}"/>
              <TD colspan="2" align="right">
              <hx:commandExButton type="submit" value="Load Table"
                                  styleClass="commandExButton" id="button1" disabled="#{manageReferenceTablesMB.loadTable}"
                                  action="#{manageReferenceTablesMB.refTable}"></hx:commandExButton>
              </TD>
              </TR>
              </TABLE>
              </h:form>
    This is the backing bean code:
    public class ManageReferenceTablesMB extends BaseMB{
         public SelectItem[] tableNames;
         public String tableValue = "-1";
    public boolean loadTable ;
         public ManageReferenceTablesMB(){
              super(SessionConstants.MANAGE_REFERENCE_TABLES);
              if (this.getFromPageDataBuffer(SessionConstants.MANAGE_REFERENCE_TABLES) == null){
              System.out.println("in constructor");
              Hashtable results = new Hashtable();
              SwqmisFrontController controller = this.getFrontController();
              results = controller.getRefTableNames();
              tableNames = buildMenu((Vector) results.get("REF_TABLE_NAMES"));
              System.out.println("added data");
              System.out.println("........."+tableValue+"..........");
              this.addToPageDataBuffer(SessionConstants.MANAGE_REFERENCE_TABLES,this);
              }else{
                   this.tableNames = ((ManageReferenceTablesMB)this.getFromPageDataBuffer(SessionConstants.MANAGE_REFERENCE_TABLES)).tableNames;
                   this.tableValue = ((ManageReferenceTablesMB)this.getFromPageDataBuffer(SessionConstants.MANAGE_REFERENCE_TABLES)).tableValue;
                   this.loadTable = ((ManageReferenceTablesMB)this.getFromPageDataBuffer(SessionConstants.MANAGE_REFERENCE_TABLES)).loadTable;
         public String refTable(){
              System.out.println("IN REF TABLE");
              System.out.println("....."+tableValue+".......");
              Hashtable results = new Hashtable();
              SwqmisFrontController controller = this.getFrontController();
              results = controller.getRefTable(getDisplayText(tableNames,tableValue));
              if(results!=null && results.size()>1)
              System.out.println("success");
              else
              System.out.println("failure");
              return "success";
         * @return Returns the tableNames.
         public SelectItem[] getTableNames() {
              return tableNames;
         * @param tableNames The tableNames to set.
         public void setTableNames(SelectItem[] tableNames) {
              this.tableNames = tableNames;
         * @return Returns the tableValue.
         public String getTableValue() {
              return tableValue;
         * @param tableValue The tableValue to set.
         public void setTableValue(String tableValue) {
              this.tableValue = tableValue;
         * @return Returns the loadTable.
         public boolean isLoadTable() {
              return loadTable;
         * @param loadTable The loadTable to set.
         public void setLoadTable(boolean loadTable) {
              this.loadTable = loadTable;
    In the above backing bean code the loadTable value is false.
    So under this condition the action method is calling.B'cause the button is in enable state even there is no section in the menu.
    If I make loadTable=true then the action button is in disabled state until the menu item is selected. But the action method is not executing in this case.
    Thanks.

  • JHeadstast 10.1.3 - JhsPageLifecycle issue : jhs prepareRender not called

    Hello,
    I'm evaluating Jheadstart 10.1.3.
    I have created 2 projects but both don't behave the same way.
    In one project everything works as expected but not in the second.
    It seems that the prepareRender phase implemented in JhsPageLifecycle is not called appropriately.
    Here are the relevant stack traces :
    [WORKING PROJECT]
    7 nov. 2006 11:27:03 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:initContext
    7 nov. 2006 11:27:03 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:prepareModel
    11:27:03 DEBUG (JhsPageLifecycle) -Executing prepareModel, page=/create.jspx, pagedef=createPageDef
    11:27:03 DEBUG (JhsNavigationHandlerImpl) -Executing checkRoles
    7 nov. 2006 11:27:03 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:prepareRender
    11:27:03 DEBUG (JhsPageLifecycle) -Executing prepareRender, page=/create.jspx, pagedef=createPageDef
    [NOT WORKING PROJECT]
    7 nov. 2006 11:28:35 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:initContext
    7 nov. 2006 11:28:35 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:prepareModel
    11:28:35 DEBUG (JhsPageLifecycle) -Executing prepareModel, page=/app/temp.jspx, pagedef=app_tempPageDef
    11:28:35 DEBUG (JhsNavigationHandlerImpl) -Executing checkRoles
    7 nov. 2006 11:28:36 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:initContext
    7 nov. 2006 11:28:36 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:prepareModel
    7 nov. 2006 11:28:36 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:prepareRender
    7 nov. 2006 11:28:36 oracle.adf.controller.v2.lifecycle.Lifecycle executePhase
    FIN: [ADFc] Execute:prepareRender
    What should I look at in order to make both projects work ?
    Thanks,
    Seb.

    I've checked my faces-config.xml. It had the folowing inside :
      <application>
        <default-render-kit-id>oracle.adf.core</default-render-kit-id>
      </application>
      <lifecycle>
        <phase-listener>oracle.adf.controller.faces.lifecycle.ADFPhaseListener</phase-listener>
      </lifecycle>Since JhsCommon-beans.xml redefines the phase listener, I had un instable state.
    May be this will serve someone else.
    Seb.

  • Strange behavior: action method not called when button submitted

    Hello,
    My JSF app is diplaying a strange behavior: when the submit button is pressed the action method of my managed bean is not called.
    Here is my managed bean:
    package arcoiris;
    import java.util.ArrayList;
    import java.util.List;
    import javax.faces.model.SelectItem;
    public class SearchManagedBean {
        //Collected from search form
        private String keyword;
        private String country;
        private int[] postcode;
        private boolean commentExists;
        private int rating;
        private boolean websiteExists;
        //Used to populate form
        private List<SelectItem> availableCountries;
        private List<SelectItem> availablePostcodes;
        private List<SelectItem> availableRatings;
        //Retrieved from ejb tier
        private List<EstablishmentLocal> retrievedEstablishments;
        //Service locator
        private arcoiris.ServiceLocator serviceLocator;
        //Constructor
        public SearchManagedBean() {
            System.out.println("within constructor SearchManagedBean");
            System.out.println("rating "+this.rating);
        //Getters and setters
        public String getKeyword() {
            return keyword;
        public void setKeyword(String keyword) {
            this.keyword = keyword;
        public String getCountry() {
            return country;
        public void setCountry(String country) {
            this.country = country;
        public boolean isCommentExists() {
            return commentExists;
        public void setCommentExists(boolean commentExists) {
            this.commentExists = commentExists;
        public int getRating() {
            return rating;
        public void setRating(int rating) {
            this.rating = rating;
        public boolean isWebsiteExists() {
            return websiteExists;
        public void setWebsiteExists(boolean websiteExists) {
            this.websiteExists = websiteExists;
        public List<SelectItem> getAvailableCountries() {
            List<SelectItem> countries = new ArrayList<SelectItem>();
            SelectItem si_1 = new SelectItem();
            SelectItem si_2 = new SelectItem();
            SelectItem si_3 = new SelectItem();
            si_1.setValue("2");
            si_1.setLabel("ecuador");
            si_2.setValue("1");
            si_2.setLabel("colombia");
            si_3.setValue("3");
            si_3.setLabel("peru");
            countries.add(si_1);
            countries.add(si_2);
            countries.add(si_3);
            return countries;
        public void setAvailableCountries(List<SelectItem> countries) {
            this.availableCountries = availableCountries;
        public List<SelectItem> getAvailablePostcodes() {
            List<SelectItem> postcodes = new ArrayList<SelectItem>();
            SelectItem si_1 = new SelectItem();
            SelectItem si_2 = new SelectItem();
            SelectItem si_3 = new SelectItem();
            si_1.setValue(75001);
            si_1.setLabel("75001");
            si_2.setValue(75002);
            si_2.setLabel("75002");
            si_3.setValue(75003);
            si_3.setLabel("75003");
            postcodes.add(si_1);
            postcodes.add(si_2);
            postcodes.add(si_3);
            return postcodes;
        public void setAvailablePostcodes(List<SelectItem> availablePostcodes) {
            this.availablePostcodes = availablePostcodes;
        public List<SelectItem> getAvailableRatings() {
            List<SelectItem> ratings = new ArrayList<SelectItem>();
            SelectItem si_1 = new SelectItem();
            SelectItem si_2 = new SelectItem();
            SelectItem si_3 = new SelectItem();
            si_1.setValue(1);
            si_1.setLabel("1");
            si_2.setValue(2);
            si_2.setLabel("2");
            si_3.setValue(3);
            si_3.setLabel("3");
            ratings.add(si_1);
            ratings.add(si_2);
            ratings.add(si_3);
            return ratings;
        public void setAvailableRatings(List<SelectItem> availableRatings) {
            this.availableRatings = availableRatings;
        public int[] getPostcode() {
            return postcode;
        public void setPostcode(int[] postcode) {
            this.postcode = postcode;
        public List<EstablishmentLocal> getRetrievedEstablishments() {
            return retrievedEstablishments;
        public void setRetrievedEstablishments(List<EstablishmentLocal> retrievedEstablishments) {
            this.retrievedEstablishments = retrievedEstablishments;
        //Business methods
        public String performSearch(){
            System.out.println("performSearchManagedBean begin");
            SearchRequestDTO searchRequestDto = new SearchRequestDTO(this.keyword,this.country,this.postcode,this.commentExists,this.rating, this.websiteExists);
            SearchSessionLocal searchSession = lookupSearchSessionBean();
            List<EstablishmentLocal> retrievedEstablishments = searchSession.performSearch(searchRequestDto);
            this.setRetrievedEstablishments(retrievedEstablishments);
            System.out.println("performSearchManagedBean end");
            return "success";
        private arcoiris.ServiceLocator getServiceLocator() {
            if (serviceLocator == null) {
                serviceLocator = new arcoiris.ServiceLocator();
            return serviceLocator;
        private arcoiris.SearchSessionLocal lookupSearchSessionBean() {
            try {
                return ((arcoiris.SearchSessionLocalHome) getServiceLocator().getLocalHome("java:comp/env/ejb/SearchSessionBean")).create();
            } catch(javax.naming.NamingException ne) {
                java.util.logging.Logger.getLogger(getClass().getName()).log(java.util.logging.Level.SEVERE,"exception caught" ,ne);
                throw new RuntimeException(ne);
            } catch(javax.ejb.CreateException ce) {
                java.util.logging.Logger.getLogger(getClass().getName()).log(java.util.logging.Level.SEVERE,"exception caught" ,ce);
                throw new RuntimeException(ce);
    }Here is my jsp page:
    <%@page contentType="text/html"%>
    <%@page pageEncoding="UTF-8"%>
    <%@taglib prefix="f" uri="http://java.sun.com/jsf/core"%>
    <%@taglib prefix="h" uri="http://java.sun.com/jsf/html"%>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
             <html>
                 <head>
                     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
                     <META HTTP-EQUIV="pragma" CONTENT="no-cache">
                     <title>JSP Page</title>
                 </head>
                 <body>
                     <f:view>
                         <h:panelGroup id="body">
                             <h:form id="searchForm">
                                 <h:panelGrid columns="2">
                                     <h:outputText id="keywordLabel" value="enter keyword"/>   
                                     <h:inputText id="keywordField" value="#{SearchManagedBean.keyword}"/>
                                     <h:outputText id="countryLabel" value="choose country"/>   
                                     <h:selectOneListbox id="countryField" value="#{SearchManagedBean.country}">
                                         <f:selectItems id="availableCountries" value="#{SearchManagedBean.availableCountries}"/>
                                     </h:selectOneListbox>
                                     <h:outputText id="postcodeLabel" value="choose postcode(s)"/>   
                                     <h:selectManyListbox id="postcodeField" value="#{SearchManagedBean.postcode}">
                                         <f:selectItems id="availablePostcodes" value="#{SearchManagedBean.availablePostcodes}"/>
                                     </h:selectManyListbox>
                                     <h:outputText id="commentExistsLabel" value="with comment"/>
                                     <h:selectBooleanCheckbox id="commentExistsField" value="#{SearchManagedBean.commentExists}" />
                                     <h:outputText id="ratingLabel" value="rating"/>
                                     <h:selectOneListbox id="ratingField" value="#{SearchManagedBean.rating}">
                                         <f:selectItems id="availableRatings" value="#{SearchManagedBean.availableRatings}"/>
                                     </h:selectOneListbox>
                                     <h:outputText id="websiteExistsLabel" value="with website"/>
                                     <h:selectBooleanCheckbox id="websiteExistsField" value="#{SearchManagedBean.websiteExists}" />
                                     <h:commandButton value="search" action="#{SearchManagedBean.performSearch}"/>
                                 </h:panelGrid>
                             </h:form>
                         </h:panelGroup>
                     </f:view>
                 </body>
             </html>
         here is my faces config file:
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE faces-config PUBLIC
      "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
      "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
    <faces-config>
        <managed-bean>
            <managed-bean-name>SearchManagedBean</managed-bean-name>
            <managed-bean-class>arcoiris.SearchManagedBean</managed-bean-class>
            <managed-bean-scope>request</managed-bean-scope>
        </managed-bean>
        <navigation-rule>
           <description></description>
            <from-view-id>/welcomeJSF.jsp</from-view-id>
            <navigation-case>
            <from-outcome>success</from-outcome>
            <to-view-id>index.jsp</to-view-id>
            </navigation-case>
        </navigation-rule>
    </faces-config>The problem occurs when the field ratingField is left blank (which amounts to it being set at 0 since it is an int).
    Can anyone help please?
    Thanks in advance,
    Julien.

    Hello,
    Thanks for the suggestion. I added the tag and it now says:
    java.lang.IllegalArgumentException
    I got that from the log:
    2006-08-17 15:29:16,859 DEBUG [com.sun.faces.el.ValueBindingImpl] setValue Evaluation threw exception:
    java.lang.IllegalArgumentException
         at sun.reflect.GeneratedMethodAccessor118.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.faces.el.PropertyResolverImpl.setValue(PropertyResolverImpl.java:178)
         at com.sun.faces.el.impl.ArraySuffix.setValue(ArraySuffix.java:192)
         at com.sun.faces.el.impl.ComplexValue.setValue(ComplexValue.java:171)
         at com.sun.faces.el.ValueBindingImpl.setValue(ValueBindingImpl.java:234)
         at javax.faces.component.UIInput.updateModel(UIInput.java:544)
         at javax.faces.component.UIInput.processUpdates(UIInput.java:442)
         at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:935)
         at javax.faces.component.UIForm.processUpdates(UIForm.java:196)
         at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:935)
         at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:935)
         at javax.faces.component.UIViewRoot.processUpdates(UIViewRoot.java:363)
         at com.sun.faces.lifecycle.UpdateModelValuesPhase.execute(UpdateModelValuesPhase.java:81)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
         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 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:159)
         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)
    2006-08-17 15:29:16,875 DEBUG [com.sun.faces.context.FacesContextImpl] Adding Message[sourceId=searchForm:ratingField,summary=java.lang.IllegalArgumentException)Do you see where the problem comes from??
    Julien.

  • Custom row-fetch and how to get column values from specific row of report

    Hi -- I have a case where a table's primary key has more than 3 columns. My report on the
    table has links that send the user to a single-row DML form, but of course the automatic
    fetch won't work because 1) I can't set more than 3 item values in the link and 2) the
    auto fetch only handles 2 PK columns.
    1)
    I have written a custom fetch (not sure it's the most elegant, see second question) that is working
    for 3 or few PK columns (it references the 1-3 item values set in the link), but when there are
    more than 3, I don't know how to get the remaining PK column values for the specific row that was
    selected in the report. How can I access that row's report column values? I'll be doing it from the
    form page, not the report page. (I think... unless you have another suggestion.)
    2)
    My custom fetch... I just worked something out on my own, having no idea how this is typically
    done. For each dependent item (database column) in the form, I have a source of PL/SQL
    function that queries the table for the column in question, using the primary key values. It works
    beautifully, though is just a touch slow on my prototype table, which has 21 columns. Is there
    a way to manually construct the fetch statement once for the whole form, and have APEX be smart
    about what items get what
    return values, so that I don't have to write PL/SQL for every item? Because my query data sources
    are sometimes in remote databases, I have to write manual fetch and dml anyway. Just would like
    to streamline the process.
    Thanks,
    Carol

    HI Andy -- Well, I'd love it if this worked, but I'm unsure how to implement it.
    It seems I can't put this process in the results page (the page w/ the link, that has multiple report rows), because the link for the row will completely bypass any after-submit processes, won't it? I've tried this in other conditions; I thought the link went directly to the linked-to page.
    And, from the test of your suggestion that I've tried, it's not working in the form that allows a single row edit. I tried putting this manually-created fetch into a before header process, and it seems to do nothing (even with a hard-coded PK value, just to test it out). In addition, I'm not sure how, from this page, the process could identify the correct PK values from the report page, unless it can know something about the row that was selected by clicking on the link. It could work if all the PK columns in my edit form could be set by the report link, but sometimes I have up to 5 pk columns.
    Maybe part of the problem is something to do with the source type I have for each of the form items. With my first manual fetch process, they were all pl/sql functions. Not sure what would be appropriate if I can somehow do this with a single (page level?) process.
    Maybe I'm making this too hard?
    Thanks,
    Carol

  • Sharepoint List of action plan not load all the rows,

    hello
    we are using sharepoint 2010 , we are facing problem in loading list_of_action_plan that not load all the raws (data)in datasheet view, but in standard view its loads all the data,
    can some one helps in this problem
    We have one separate virtual machine  SQL server 2005 for sharepoint server.  also we check that SQL server instance use more CPU usages.

    Hi,
    According to your post, my understanding is that one of your custom columns could not be copied using the copy list item action.
    I had created a custom field using the URL type, then add the column into the list.
    Using the SharePoint Designer to create a custom workflow with the copy list item action.
    The workflow worked without any issue, it can copy the custom URL type field.
    Did the issue occur in other list? You can create a new list, add the custom field to the list, then just using the copy list item to check whether it works.
    Thanks,
    Jason
    Forum Support
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected]
    Jason Guo
    TechNet Community Support

  • Search bar/Action menu not showing after upgrade to 4.2

    All,
    I had a classic report in apex 4.1 then i upgraded to apex 4.2 and converted the classic report to interactive report. Now i can see the Search Bar under report attributes and check it with all options= Yes but it doesn't appear on the report when i run the page,
    i had other issues with developer tools but thats working now except the Action Bar is missing...
    what could be the issue here?
    using theme 24/cloudy
    thanks.

    Hi,
    I had this issue when we upgraded to 4.2, I did the below change, Plz try this, and if it works for you, that should be great. Change the Image Prefix to  /i/   in older versions I think it was something like  /image/
    Home->Application Builder->Application 105->Edit Application Definition
    Name
    Application
    105
    Name
    Application Alias
    Version
    Image Prefix
    Media Type
    Proxy Server
    Parsing Schema

  • Having issues with iMac not working after sleep mode

    When waking up from sleep mode or turning machine on in the mornig computer will not recognize the mouse or track pad.  I have a 3.06 GHZ Intel Core 2 Duo.

    sudo nvram boot-args=”-p -r” should get the computer to reset the nvram. After words its a good idea, to go back into Apple Menu, System Preferneces, Startup Disk, and make sure your Hard Drive is selected.
    Is the OS up to date? if not, why not try running software update?
    have you tried repalcing the batteries?
    Have you tested with a wired keyboard or mouse? (dose it have the same issue)
    Have you tried a safeboot?

Maybe you are looking for