Using commandLinks and commandButtons in dataTables

I'm trying to create a page that displays data from a database and allows you to edit individual rows by clicking on either a commandButton or a commandLink within a dataTable that then takes you to another page where you can edit that particular row of the table.
When using a commandButton, it works perfectly for all but the last entry in the table. But when the button in the last line is clicked, nothing happens at all, it does not seem to call the action listener and it does not perform the navigation based on the action. But with all the previous buttons it calls the actionListener and navigates perfectly. Can anyone tell me why this would be? The code is as follows:
<h:dataTable value="#{Categories.categories}" var="category" >
<h:column>
<f:facet name="header"><h:outputText value="#{msgs.deptColumnHead}"/></f:facet>
<h:outputText value="#{category.departmentName}"/>
</h:column>
<h:column>
<f:facet name="header"><h:outputText value="#{msgs.categoriesColumnHead}"/></f:facet>
<h:outputText value="#{category.categoriesList}"/>
</h:column>
<h:column>
<h:form>
<h:inputHidden id="dept" value="#{category.departmentId}"/>
<h:commandButton id="editButton" action="EditCat" actionListener="#{Categories.editListener}" value="{msgs.editSelectedButtonText}"/>
</h:form>
</h:column>
</h:dataTable>
When using commandLinks, only the first one works (of 4). For the other 3 the page goes into error when the link is clicked and it complains that 'document.forms._id2:3:_id10._id2:3:_id10:idcl is null or not an object'. If anyone could tell me what is wrong with my code, i would be most appreciative.
<h:dataTable value="#{Categories.categories}" var="category" >
<h:column>
<f:facet name="header"><h:outputText value="#{msgs.deptColumnHead}"/></f:facet>
<h:outputText value="#{category.departmentName}"/>
</h:column>
<h:column>
<f:facet name="header"><h:outputText value="#{msgs.categoriesColumnHead}"/></f:facet>
<h:outputText value="#{category.categoriesList}"/>
</h:column>
<h:column>
<h:form>
<h:inputHidden id="dept" value="#{category.departmentId}"/>
<h:commandLink action="EditCat" actionListener="#{Categories.editListener}">
<h:outputText value="#{msgs.editSelectedButtonText}"/>
</h:commandLink>
</h:form>
</h:column>
</h:dataTable>

1) I have had very odd behavior in JSF when ALL of the
JSF elements on a page do not have an id attribute. If
you do not assign an id then JSF will manufacture a
unique id on the flag. Sometimes the unique id wasn't
so unique and there were errors like you are seeing or
just odd behavior on the form, buttons not generating
events, or incorrect rendering, etc.
By 'ALL' I mean output text, columns, anything that
accepts an id attribute. Don't trust the code to
generate an id correctly for you.Just want it known that while this may be necessary in the short-term to work around bugs, this is definitely not the intent of the EG! We don't want people getting in the habit of
Also note that this behavior is not consistent
sometimes it would not appear on a page unless the
page was updated and more controls added to it.Ah, well that is a known issue; while developing a page, the Sun RI can have problems if you change a page's contents between two submissions. (It doesn't pick up that the .jsp has changed.) I'd recommend:
- Use client-side state saving.
- Make sure you're making a new request for a page (not re-POST-ing anything!) when the page's contents have changed.
If you follow both of those rules, then you should generally be able to get away without explicit IDs everywhere as you actively develop your page.
Explicit IDs are required if you're inside <c:if>; this is known and documented.
2) try putting the hidden input control in it's own
columnNo, that'll give you a bonus set of <td> elements, which isn't what you want.
-- Adam Winer (EG member)

Similar Messages

  • CommandLinks and CommandButtons in Datatable do not work

    I have read the threads about this issue and am aware of the fact that there is a problem, if the backing bean is in request scope. However, my backing bean is in session scope and it still does not work - my action methods are never called. What's more, I have another backing bean in session scope, where it works perfectly and I cannot see any difference between them.
    Here's the code, my backing bean is dms:
    <h:form rendered="#{dms.documents.rowCount > 0}">
    <h:dataTable rowClasses="..." headerClass="..." value="#{dms.documents}"
    columnClasses="..." var="item" border="1" cellpadding="2" cellspacing="0">
    <h:column>
    <f:facet name="header">
    <h:outputText>DocName</h:outputText>
    </f:facet>
    <h:commandLink action="#{dms.test}" value="#{item.docName}"/>
    </h:column>
    <h:column>
    <f:facet name="header"/>
    <h:commandButton id="foo" value="View" action="#{dms.test}"/>
    </h:column>
    </h:dataTable>
    <h:commandLink action="#{dms.test}" value="Clickme"/>
    </h:form>
    Here is the code in the backing bean:
    public String test() {
    System.out.println("Hooray");
    return "mainPage";
    And this in faces-config.xml:
    <managed-bean>
    <managed-bean-name>dms</managed-bean-name>
    <managed-bean-class>com.mypackage.DmsController</managed-bean-class>
    <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>
    Only the last link, the one outside the datatable and titled "Clickme", works. I can see "Hooray" in the logfile and am redirected to the main page. If I click any of the links or buttons in the datatable, nothing is written to the log and the same page is loaded again, but only the static content is displayed, i.e. no JSF tags are evaluated, they are just dropped. There are, however, a few hidden input fields called javax.faces.ViewState, which I don't know where they are coming from.
    As I said, I have another backing bean in session scope, which is modelled exactly like that and it works there. Maybe JSF apps are supposed to have only one controller?
    Many thanks in advance for any pointers,
    Ulrich
    Edit: It doesn't change anything if I put the backing bean in application scope. I did have the same problem before with my other backing bean, but could solve it there by putting it from request scope to session scope.

    <h:dataTable value="#{dms.documents}">How do you load this list? This list should not be null during the INVOKE_APPLICATION phase.
    Try stubbing the List right in the getDocuments() method and see if it works.

  • Problem with commandLink and commandButton

    Problem with commandLink and commandButton
    I have commandButton id="submit" action="{myActionClass.dothis}"
    When I click on the commandbutton it is not submiting to the action class rather, its submitting to the same page..
    I am tired of this ...
    I am using tiles for displaying jsf pages . Any problem because of using tiles

    yes I have the validator.
    If I open the url directly its working fine
    let say I am opening localhost:8080/test/test.jsf
    then it works fine
    If i use the same test.jsf along with tiles and open it, then its dispalying all the elements but when i click on commandbutton.. nothin is happening.
    the seems like page is reloaded.

  • Error commandlink  and commandbutton

    Hi.
    I have a sample page whith a datatable who rows are commandlinks that (action procedure1).
    I this page I have a button that re-execute a query who provide rows to datatable (action procedure2).
    When I click in a row the commandlink works ok calling procedure1...
    when I click in button the procedure1() is called first time, and when I click in button second time is that procedure2() is called.
    <h:column binding="#{P0110.column4}" id="column4">
    <h:commandLink action="#{P0110.procedure1}" binding="#{P0110.linkAction1}" id="linkAction1">
    <h:outputText binding="#{P0110.outputText10}" id="outputText10" value="#{currentRow['Descricao']}"/>
    </h:commandLink>
    <f:facet name="header">
    <h:outputText binding="#{P0110.outputText11}" id="outputText11" value="Descri��o"/>
    </f:facet>
    </h:column>
    <h:commandButton action="#{P0110.procedure2}" binding="#{P0110.button2}" id="button2" style="left: 920px; top: 76px; position: absolute" value="Executa"/>
    PS: My procedure1 call a page with "this.getExternalContext().redirect( this.getExternalContext().getRequestContextPath() + "/faces/"+NomePag+".jsp);"

    Hi Runa.
    this is a sample example that I create using pointbase. Please, test, that you undestand better my question.
    </head>
    <body style="-rave-layout: grid">
    <h:form binding="#{Page1.form1}" id="form1">
    <h:dataTable binding="#{Page1.dataTable1}" headerClass="list-header" id="dataTable1" rowClasses="list-row-even,list-row-odd"
    style="left: 300px; top: 90px; position: absolute" value="#{Page1.dataTable1Model}" var="currentRow">
    <h:column binding="#{Page1.column2}" id="column2">
    <h:commandLink action="#{Page1.acionaModulo}" binding="#{Page1.linkAction1}" id="linkAction1">
    <h:outputText binding="#{Page1.outputText3}" id="outputText3" value="#{currentRow['NAME']}"/>
    </h:commandLink>
    <f:facet name="header">
    <h:outputText binding="#{Page1.outputText4}" id="outputText4" value="NAME"/>
    </f:facet>
    </h:column>
    </h:dataTable>
    <h:commandButton action="#{Page1.button1_action}" binding="#{Page1.button1}" id="button1" style="left: 555px; top: 70px; position: absolute" value="Submit"/>
    </h:form>
    </body>
    public Page1() {
    // <editor-fold defaultstate="collapsed" desc="Creator-managed Component Initialization">
    try {
    personRowSet.setDataSourceName("java:comp/env/jdbc/Travel");
    personRowSet.setCommand("SELECT * FROM TRAVEL.PERSON");
    dataTable1Model.setDataCacheKey("com.sun.datacache.Page1.personRowSet");
    dataTable1Model.setRowSet(personRowSet);
    dataTable1Model.setSchemaName("TRAVEL");
    dataTable1Model.setTableName("PERSON");
    } catch (Exception e) {
    log("Page1 Initialization Failure", e);
    throw e instanceof javax.faces.FacesException ? (FacesException) e: new FacesException(e);
    // </editor-fold>
    // Additional user provided initialization code
    public String acionaModulo() {
    try {
    this.getExternalContext().redirect( this.getExternalContext().getRequestContextPath() + "/faces/page1.jsp");
    catch (IOException e) {
    log("P0110 acionaModulo() ", e);
    error("Detail:P0110 acionaModulo(): " + e);
    return null;
    protected void afterRenderResponse() {
    personRowSet.close();
    public String button1_action() {
    try {
    personRowSet.setCommand("SELECT * FROM TRAVEL.PERSON where NAME> 'B'");
    dataTable1Model.execute();
    } catch (Exception e) {
    log("Page1 Initialization Failure", e);
    throw e instanceof javax.faces.FacesException ? (FacesException) e: new FacesException(e);
    return null;
    To make the error :
    1) click in a line . You obtain an 404 error (no problem)
    2) Return to page before and click in button.
    3) The expected result was a new rowset because the execution of a second query, but the action is the execution of acionaModulo
    Thanks.
    Heitor.

  • How to remember the value in h:commandLink inside a h:datatable

    I have a h:dataTable storing header information, there is a column "refno" which is a h:commandlink (or h:outputlink) so user can select that column and jump to the detail page.
    My problem is how to remember the refno so I can use it in the detail page?
    a simplified code is as follows:
    <html>
        <body>
              <f:view>
                  <h:form id="select">
                  <h:dataTable value="#{dataTableBean.arr}" var="loc">
                      <h:column>
                          <f:facet name="header" >
                              <h:outputText value="Frameworks"/>
                          </f:facet>   
                          <h:outputLink value="openedTenderDetail.jsf"> // or h:commandLink
                                  <h:outputText value="#{loc.refNo}" />
                          </h:outputLink>                            
                     </h:column>
                 </h:dataTable>
              </f:view>
        </body>
    </html>

    hello
    u can use <f:param to remeber value and go to next page accordingly
    in detail
    use commandlink and in action get value of <f:param and then navigate to the desired page according to the param value
    regards
    Shakeel Abbas

  • How to create a modeless dialog using commandlink

    i want to create a modelessdialog using commandlink. and my code is
    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <f:view>
    <script language="Javascript1.2">
    function modelesswin(){
    window.showModelessDialog();
    </script>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <h:form>
    <h:commandLink onclick="javascript:modelesswin('popup.html', 300, 300)" value="click"></h:commandLink>
    </h:form>
    </body>
    </f:view>
    </html>
    when i click the buttonlink the dialog box is not in a stable state that is its will appear and within a second it will disappear .. can any one of them can suggest me how to create a modeless dialoge using commandlink or by jsf option button
    regards
    subramanian

    If I had to guess (and I do :), the onclick is firing, bring up the dialog, but the commandLink causes a form submit, so the page is submitted. There is no action on the commandLink, so it's navigating back to the same page, causing it to refresh and your dialog to disappear. It would appear to me that you need a h:outputLink or simply <a href="# onclick="..." /"></a>

  • CommandLink and js:confirm

    hi, i meet some problem with commandLink and js.
    jsf code:
    <h:commandLink value="Del" onclick="return delconfirm();" action="#{userAdminBean.userDel}" >
                                            <f:param name="userId" value="#{info.uid}"/>
                                            <f:param name="userPartId" value="#{info.upartmentid}"/>
                                       </h:commandLink>js code:
         <script language="javascript">
              function delconfirm(){
                   return confirm("confirm to del?");
         </script>i click the commandLink "Del", then a messagebox with two button "submit" and "cancel" will be shown.but whether i click the "submit" or "cancel", the expolre client don't send request to web server,.
    who can help me?thanks.

    sorry, i use jsf1.1.
    it works when removing the onclick part.
    i hava not used commandButton to replace commandLink, as i must pass someparameter useing f:param.
    excepting using jsf1.2 , are there any other way to solve this problem?(not using commandButton ,because i have to pass parameter)

  • Dialog framework and commandButton doesn't display in new window

    I'm using a af:commandButton to launch a dialog in a new windows with no luck
    I'm using EA1 and ADF EA 19, my command button is
    <af:commandButton text="dialogo"
    launchListener="#{controladorLink.launch}"
    useWindow="true"
    returnListener="#{controladorLink.regreso}"
    partialSubmit="true"
    action="#{controladorLink.accion}"
    actionListener="#{controladorLink.actionListener}"
    windowHeight="200" windowWidth="300">
    Am I doing something wrong? According to the Dialog Framework documentation you need to set an "useDialog" attribute, but it doesn't exists in commandButton, do I need to use commandLink necessarily?
    Thanks

    Did you take care of these requirements?
    The value bound to the action should return a string of the form "dialog:.....".
    Eg: <af:commandButton text="Show More Information"
    action="dialog:showDetail"/>
    And there is a navigation-case that needs to be added to the faces-config.
    <navigation-rule>
    <from-view-id>/*</from-view-id>
    <navigation-case>
    <from-outcome>dialog:showDetail</from-outcome>
    <to-view-id>/showDetail.jspx</to-view-id>
    </navigation-case>
    </navigation-rule>
    Hope this helps.
    Thanks,
    Balaji

  • Lining up Columns and Heading in dataTable

    I am having some trouble lining up my columns with their headings in my dataTable.
    When i use IE the columns and headings line up perfectly.
    When i use Firefox the final column doesn't line up with the last heading.
    If i minmise the application in either browser the headings stay as they are and the columns don't line up with them meaning certain values don't come under their headings when the application is minimised. Has anyone else had this problem?
    any help or suggestions would be really apprecited. Thanks in advance. My dataTable is as follows:
    <t:dataTable id="routeList" value="#{RouteHandler.routeWithIdList}" var="rowElement" cellspacing="0" cellpadding="3"
    border="0" headerClass="listhead" columnClasses="listresults" bgcolor="#FFFFFF" rendered="#{!VirginHandler.selected}">
    <t:column width="104">
                                  <h:commandLink id="editLink" action="#{RouteHandler.prepareAddScheduleAction}" >
                                       <h:outputText value="#{rowElement.carrierCode}"/>
                                       <f:param name="routeDisplayId" value="#{rowElement.routeDisplayId }"/>
                                       </h:commandLink>
                                  </t:column>
    <t:column width="165">
    <h:commandLink id="editLink" action="#{RouteHandler.prepareAddScheduleAction}" >
                                       <h:outputText value="#{rowElement.departureAirport}"/>
                                       <f:param name="routeDisplayId" value="#{rowElement.routeDisplayId }"/>
                                       </h:commandLink>
    </t:column>
    <t:column width="920">
    <h:commandLink id="editLink" action="#{RouteHandler.prepareAddScheduleAction}" >
                                       <h:outputText value="#{rowElement.arrivalAirport}" />
                                       <f:param name="routeDisplayId" value="#{rowElement.routeDisplayId }"/>
                                       </h:commandLink>
    </t:column>
    </t:dataTable>

    When you need a table, use a table. 
    CSS:
    td:nth-child(2) {
         font-weight:bold;
         text-align:right;
    HTML:
    <table cellspacing="0" cellpadding="5">
    <tr>
    <td>Some text here</td>
    <td>Price</td>
    </tr>
    <tr>
    <td>Some text here</td>
    <td>Price</td>
    </tr>
    <tr>
    <td>Some text here</td>
    <td>Price</td>
    </tr>
    </table>
    Nancy O.
    Alt-Web Design & Publishing
    Web | Graphics | Print | Media  Specialists 
    http://alt-web.com/
    http://twitter.com/altweb

  • Commandlink and checkbox in a region(.jsff).

    Hi all,
    I have a commandlink and checkbox in a region(.jsff).
    when i tried to call a method using propertychangeListener or Actionlistener ..
    methosd is not calling ...
    Plase give any solution...

    Hi,
    not enough information - sorry
    Frank

  • IllegalStateException in View (using JBOSS and ADF)

    Hi:
    I have a project using JBOSS and ADF. I have a form with the following code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <%@ page contentType="text/html"%>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces" prefix="af" %>
    <%@ taglib uri="http://xmlns.oracle.com/adf/faces/html" prefix="afh" %>
    <f:view>
    <afh:html id="html">
    <afh:head title="FisaSystem">
    <meta http-equiv="Content-Type"
    content="text/html; charset=windows-1252" />
    <link rel="stylesheet" type="text/css" media="screen" title="screen" href="<%=request.getContextPath()%>/common/skins/fisaClassic/screen.css" />
    </afh:head>
    <afh:body id="body">
    <h:form id="form">
    <af:panelPage>
    <af:showOneTab id="showOneTab" position="above">
    <af:showDetailItem text="" id="showDetailItem">
    <af:panelForm id="panelForm">
    <af:inputText id="clasificationDescription" binding="#{clasificationManager.clasificationDescription}" required="true" />
    </af:panelForm>
    </af:showDetailItem>
    </af:showOneTab>
    <f:verbatim>
    <div class="actions">
    </f:verbatim>
    <af:panelButtonBar>
    <af:commandButton id="saveButton" text="#{internationalizationManager.saveButton}" action="#{clasificationManager.saveClasification}" />
    <af:commandButton id="cancelButton" text="#{internationalizationManager.cancelButton}" action="#{clasificationManager.cancelClasification}" immediate="true" />
    </af:panelButtonBar>
    <f:verbatim>
    </div>
    </f:verbatim>
    </af:panelPage>
    </h:form>
    </afh:body>
    </afh:html>
    </f:view>
    the backing bean for that form i like this:
    package com.fisa.efisa.document.manage.bean;
    import java.util.Collection;
    import oracle.adf.view.faces.component.UIXInput;
    import oracle.adf.view.faces.component.UIXTable;
    import oracle.adf.view.faces.context.AdfFacesContext;
    import oracle.adf.view.faces.event.LaunchEvent;
    import oracle.adf.view.faces.event.ReturnEvent;
    import com.fisa.efisa.document.dto.EFPClasification;
    import com.fisa.efisa.document.manage.common.CommonBackingBean;
    import com.fisa.efisa.process.document.persistence.TdmmClasification;
    import com.fisa.efisa.process.document.service.ServiceClasification;
    import com.fisa.efisa.process.document.service.delegate.ServiceClasificationDelegate;
    import com.fisa.efisa.process.engine.service.ServiceProcessEngine;
    import com.fisa.efisa.process.engine.service.delegate.ServiceProcessEngineDelegate;
    import com.fisa.util.Action;
    import com.fisa.util.message.FTransactionMessage;
    import com.fisa.util.message.Field;
    import com.fisa.util.message.FisaMessage;
    public class ClasificationBackingBean extends CommonBackingBean {
    private final String CLASIFICATION_IDENTIFIER = "clasification";
    ServiceClasification serviceClasification;
    ServiceProcessEngine serviceProcessEngine;
    UIXTable clasificationTable;
    UIXInput clasificationDescription = new UIXInput();
    public ClasificationBackingBean() {
    serviceClasification = new ServiceClasificationDelegate();
    serviceProcessEngine = new ServiceProcessEngineDelegate();
    public Collection getClasificationList() {
    return serviceClasification.findAllClasification(getFisaUserData());
    public String addClasification() {
    return ADD_OUTCOME;
    public String editClasification() {
    TdmmClasification row = (TdmmClasification) this.clasificationTable.getSelectedRowData();
    if (row != null)
    storeObjectInRequest(this.CLASIFICATION_IDENTIFIER, row.getClasificationId());
    else
    return null;
    return EDIT_OUTCOME;
    public String saveClasification() {
    return LIST_OUTCOME;
    public String deleteClasification() {
    if (this.clasificationTable.getSelectedRowData() != null)
    return CONFIRM_DELETE_KEY;
    return null;
    public void handleConfirmDeleteReturn(ReturnEvent event) {
    if (event.getReturnValue() != null) {
    AdfFacesContext.getCurrentInstance().addPartialTarget(this.clasificationTable);
    public void handleConfirmDeleteLaunch(LaunchEvent event) {
    Object row = this.clasificationTable.getSelectedRowData();
    if (row != null)
    event.getDialogParameters().put(DELETE_OBJECT_KEY, row);
    public String cancelClasification() {
    return LIST_OUTCOME;
    public UIXTable getClasificationTable() {
    return clasificationTable;
    public void setClasificationTable(UIXTable clasificationTable) {
    this.clasificationTable = clasificationTable;
    public UIXInput getClasificationDescription() {
    if (this.getClasificationFromRequest() != null)
    clasificationDescription.setValue(this.getClasificationFromRequest().getDescription());
    return clasificationDescription;
    public void setClasificationDescription(UIXInput clasificationDescription) {
    this.clasificationDescription = clasificationDescription;
    private EFPClasification getClasificationFromRequest() {
    Long rowId = null;
    if (retrieveObjectFromRequest(this.CLASIFICATION_IDENTIFIER) != null) {
    rowId = (Long) retrieveObjectFromRequest(this.CLASIFICATION_IDENTIFIER);
    FisaMessage fisaMessage = new FisaMessage();
    fisaMessage.setHeader(getMessageHeader());
    FTransactionMessage transactionMessage = new FTransactionMessage();
    transactionMessage.setFtmApplicationId(getApplicationId());
    transactionMessage.setFtmSourceSystemId(getSystemId());
    transactionMessage.setFtmSubSystemId(getSubsystemId());
    transactionMessage.setFtmBusinessTemplateId(getClasificationBtId());
    EFPClasification efpClasification = new EFPClasification(transactionMessage);
    Field field = new Field();
    field.setValue(rowId.toString());
    transactionMessage.addField(efpClasification.CLASIFICATION_ID, field);
    transactionMessage.setFtmActionId(Action.QUERY_LIVE);
    transactionMessage.setBtDataKey(rowId.toString());
    fisaMessage.getFTransactionMessages().put(getClasificationBtId(), transactionMessage);
    fisaMessage = this.serviceProcessEngine.executeMessage(fisaMessage);
    transactionMessage = fisaMessage.getFTransactionMessages().get(getClasificationBtId());
    efpClasification = new EFPClasification(transactionMessage);
    return efpClasification;
    return null;
    And this is my faces-config
    <?xml version="1.0"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
    <context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>client</param-value>
    <!--param-value>server</param-value-->
    </context-param>
    <context-param>
    <param-name>
    oracle.adf.view.faces.USE_APPLICATION_VIEW_CACHE
    </param-name>
    <param-value>false</param-value>
    </context-param>
    <context-param>
    <param-name>
    oracle.adf.view.faces.ENABLE_DMS_METRICS
    </param-name>
    <param-value>false</param-value>
    </context-param>
    <context-param>
    <param-name>
    oracle.adf.view.faces.CHECK_FILE_MODIFICATION
    </param-name>
    <param-value>true</param-value>
    </context-param>
    <context-param>
    <param-name>
    oracle.adf.view.faces.CHANGE_PERSISTENCE
    </param-name>
    <param-value>session</param-value>
    </context-param>
    <filter>
    <filter-name>adfFaces</filter-name>
    <filter-class>
    oracle.adf.view.faces.webapp.AdfFacesFilter
    </filter-class>
    </filter>
    <filter-mapping>
    <filter-name>adfFaces</filter-name>
    <servlet-name>faces</servlet-name>
    </filter-mapping>
    <!-- Faces Servlet -->
    <servlet>
    <servlet-name>faces</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    </servlet>
    <!-- resource loader servlet -->
    <servlet>
    <servlet-name>resources</servlet-name>
    <servlet-class>
    oracle.adf.view.faces.webapp.ResourceServlet
    </servlet-class>
    </servlet>
    <!-- Faces Servlet Mappings -->
    <servlet-mapping>
    <servlet-name>faces</servlet-name>
    <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>
    <!-- Welcome Files -->
    <welcome-file-list>
    <welcome-file>index.jspx</welcome-file>
    </welcome-file-list>
    <!-- ADF Faces Tag Library -->
    <taglib>
    <taglib-uri>http://xmlns.oracle.com/adf/faces</taglib-uri>
    <taglib-location>/WEB-INF/af.tld</taglib-location>
    </taglib>
    <taglib>
    <taglib-uri>http://xmlns.oracle.com/adf/faces/html</taglib-uri>
    <taglib-location>/WEB-INF/afh.tld</taglib-location>
    </taglib>
    <!-- Faces Core Tag Library -->
    <taglib>
    <taglib-uri>http://java.sun.com/jsf/core</taglib-uri>
    <taglib-location>/WEB-INF/jsf_core.tld</taglib-location>
    </taglib>
    <!-- Faces Html Basic Tag Library -->
    <taglib>
    <taglib-uri>http://java.sun.com/jsf/html</taglib-uri>
    <taglib-location>/WEB-INF/html_basic.tld</taglib-location>
    </taglib>
    <login-config>
    <auth-method>BASIC</auth-method>
    </login-config>
    </web-app>
    As you see there's nothing really weird about this at all; if i use this page as displayed, i click on any of the buttons and everything works fine. But, if i add any other property to the clasificationDescription adf:inputText (a label for example), then it crashes with this error:
    java.lang.IllegalStateException: Invalid index
    oracle.adf.view.faces.bean.util.StateUtils.restoreKey(StateUtils.java:57)
    oracle.adf.view.faces.bean.util.StateUtils.restoreState(StateUtils.java:129)
    oracle.adf.view.faces.bean.util.AbstractPropertyMap.restoreState(AbstractPropertyMap.java:94)
    oracle.adf.view.faces.bean.FacesBeanImpl.restoreState(FacesBeanImpl.java:247)
    oracle.adf.view.faces.component.UIXComponentBase.restoreState(UIXComponentBase.java:761)
    oracle.adf.view.faces.component.UIXComponentBase.processRestoreState(UIXComponentBase.java:749)
    oracle.adf.view.faces.component.TreeState.restoreState(TreeState.java:80)
    oracle.adf.view.faces.component.UIXComponentBase.processRestoreState(UIXComponentBase.java:743)
    oracle.adf.view.faces.component.TreeState.restoreState(TreeState.java:80)
    oracle.adf.view.faces.component.UIXComponentBase.processRestoreState(UIXComponentBase.java:743)
    oracle.adf.view.faces.component.TreeState.restoreState(TreeState.java:80)
    oracle.adf.view.faces.component.UIXComponentBase.processRestoreState(UIXComponentBase.java:743)
    oracle.adf.view.faces.component.TreeState.restoreState(TreeState.java:80)
    oracle.adf.view.faces.component.UIXComponentBase.processRestoreState(UIXComponentBase.java:743)
    oracle.adf.view.faces.component.TreeState.restoreState(TreeState.java:80)
    oracle.adf.view.faces.component.UIXComponentBase.processRestoreState(UIXComponentBase.java:743)
    javax.faces.component.UIComponentBase.processRestoreState(UIComponentBase.java:1019)
    oracle.adfinternal.view.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:330)
    com.sun.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:228)
    oracle.adfinternal.view.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:232)
    com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:157)
    com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200)
    com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90)
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:197)
    oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:367)
    oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:336)
    oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:196)
    oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87)
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
    What can be happening ???

    This forum is only for questions directly related to the Sun Web Server. I think you should post your questions in the jboss forums. Alternative, you could use one of the sun products and then we would be able to help you ;)

  • Howto create a commandLink and param-attribute in a self written renderer?

    Hi guys,
    I'm currently trying to write a JSF-component for a content-mangement-system.
    The goal of the component is to render a HTML-page which lists all elements
    of an article (with all things like text-components, pictures, headline etc.)
    and provides a link for every article-element which referes the user to a
    special JSF-site in which the selected article-component can be edited. For
    example: the user sees the site which lists all article-elements and selects
    a "edit this text-component button" from one text component. Aftter that he
    would be forwarded to a "editTextComponent.jsf"-Site which loads the selected
    component into a managed bean. The site "editTextComponent.jsf"-Site itself
    would then provide a JSF-form which fields are binded with the managed-bean
    properties. To do this I need my own component-renderer to create a special
    "command link" with an additional parameter of the selected component ID
    (similar to the <h:commandLink />- and <h:f:param />-Tags in a normal
    JSF-site). Because I need the ID of the selcted component in the new
    JSF-site.
    Now I need to know how I can pass such a parameter in a renderer. In a
    jsf-site I would simply do something like
    <h:commandLink action="myUser.accessRequestEditTextComponent">
    <h:outputText value="articleAdminPage.editThisTextComp" />
    <h:f:param name="componentID" value="myTextComp.databaseID" />
    </h:commandLink>
    But how can I do such a thing in a JavaClass??? I already tried a thing like
    public void encodeEnd(FacesContext ctx, UIComponent comp)
    writer.write(" <form
    action=\"../articlecomponents/createnewpiccomp.jsf\" method=\"get\">");
    writer.write(" <input type=\"hidden\" name=\"position\" value=\"" +
    textComponent.getID() + "\" />");
    writer.write(" <input type=\"image\" src=\"" +
    myUIArticle.getCreateNewIcon() + " \" />");
    writer.write(" </form>");
    But this is not working and it is very ugly because the url of the new site is
    hard-coded (and not a "action"-attribute which can be used in the
    faces-config.xml for navigation), I'm not able to pick out this attribute in
    the new jsf-site and the HTML-code is also hard coded.
    Can you guys give at least a little hint, a keyword to what I shall look for?
    I have defintly no idea and I'm already a little bit despaired.
    Greetings,
    Hendrik

    Okay, Martin from the myfaces-development-team has just anwsered my question. For all of you who have the same question: such a think that I'm trying to do is done in the "writeLink"-method in the HTMLCalenderRenderer-class of the myfaces-extensions. So take a look at this for an excelent example!

  • Use commandLink to forward non-jsf page cause other commandLink invalidate

    Hi :
    I use commandLink to forward to non jsf page , after click the link , it worked , success to 1.jsp. Then I click another link , the other commandLink doesn't work.
    any one have the same problem ?
    JSF page:
    <h:commandLink action="#{MenuHandler.go}">
         <h:outputText value="process" />
         <f:param value="1.jsp" name="forward" />
    </h:commandLink>
    MenuHandler.java
      public static String go() {
                HttpServletRequest req = getRequest();
                String forward = req.getParameter("forward");
                getExternalContext().redirect(forward);
                FacesContext.getCurrentInstance().responseComplete();
                return "success";
      }ps:there is one <h:form/> in my jsf page and I use:
    jdk1.5.0
    jsf-1_1
    Tomcat-5.0.28

    to supplement:
    I found something strange:
    The JSF page I used is for menu purpose.
    So there is a <BASE target="mainFrame"> tag in my JSF page.
    If I mark it . Then other commandLink can work ~~
    Because the page is a menu page , so I can't mark the <BASE target="mainFrame">

  • Using NULL and NOT NULL in prompted filters

    Dear all,
    While trying to grap the concept of prompted filters in sap bo web intelligence, I had a question whether why we cannot use NULL and NOT NULL while creating a prompted filters in our report.

    HI,
    'Is Null' and 'Not Null' are the predefined functions in webi which only eliminate the null values or considering only null values.
    'Is Null' and 'Not Null' are itself predefined functions that why you are not getting  prompts.
    Null values are standard across the databases so this is defined  as a function in webi to specific eliminate the null values.
    If something is not standard then there is option in the webi to use different operator with static values or with prompts.
    More more information on Null see the Null wiki page.
    Null (SQL) - Wikipedia, the free encyclopedia
    Amit

  • How do I use Qt and OpenGL with Visual Studio

    Hi! I mainly want to program in C++ and I want to use Qt and OpenGL with Visual Studio.
    I am currently revising C++ and later on i am going to start reading Qt and OpenGL. I have a background of
    Embedded firmware design(C and Assembly).
    The Visual Studio Version I have is 2013 ultimate. How do I use Qt and OpenGL with Visual Studio?
    Thanks
    Alexandros

    Hi ClassicalGuitar,
    The forum supports VS setup and installation. And your issue is not about the forum. I will move the thread to off-topic forum. Thanks for your understanding.
    Regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

Maybe you are looking for

  • Multiple iPod's on the same computer????

    Does anyone know of a way that you can use two iPods (1 nano and one 60GB) on the same computer and have seperate libraries of music??? My roommate and I share a computer and both have iPod's but don't want the same music on our players; any thoughts

  • Os Lion epson printer error

    Macbook Air (new, with Lion) Epson all in one SX600FW connected WiFi With my previous MacBook air, no problem With the new one, the first document of a session i want to print generates an "error" message. The next ones print just fine. I removed and

  • Why is my Mac running slowly

    Can anyone tell me why my computer is so slow.  Even typing suddenly stops on the screen.  Its a Mac OSX desktop.

  • Error code -43 when updating iphone 4 to new 5.0 software

    I have the iphone 4 and can't get the new 5.0 software update. It barely gets halfway through backing it up when it says error code (-43) and if I click continue all contents will be lost! Please help!

  • IPhone contacts, calendar etc

    My wife received a new iPhone for Christmas, which makes us a two iPhone family now. How can I set up separate contacts and calendars in iTunes for my wife's new phone. Thank you