Also, try with <h:dataTable>. That should help narrow it down as to
whether the problem is on your end or with <x:dataTable.> AFAIK
<h:dataTable> works fine in this area.
sean
On 6/21/05, Sean Schofield <[EMAIL PROTECTED]> wrote:
> Does it work with preserve datamodel = false? I wonder if that might
> be the problem... It's supposed to work either way of course.
>
> sean
>
> On 6/5/05, Farooq Mahmood <[EMAIL PROTECTED]> wrote:
> > Hi,
> > I am new to jsf and I m using my faces. I m getting
> > problem regarding "x:dataTable" and
> > "x:updateActionListener". I am actually I have seen
> > some posts regarding "x:dataTable" and
> > "x:updateActionListener" but I donot able to solve my
> > problem. Plz chk this problem and tell me where I m
> > doing wrong.
> > The problem is that when I click on the link instead
> > of send that particular row (or taskId) it sends the
> > whole List and then it iterate the whole list and
> > display the list row values on the next page. Here is
> > the code:
> >
> > inbox.jsp
> >
> > <x:dataTable id="data"
> > styleClass="scrollerTable"
> >
> > headerClass="standardTable_Header"
> >
> > footerClass="standardTable_Header"
> >
> > rowClasses="standardTable_Row1,standardTable_Row2"
> >
> > columnClasses="standardTable_Column,standardTable_ColumnCentered,standardTable_Column"
> > var="task"
> >
> > value="#{inboxTaskBean.taskList}"
> > preserveDataModel="true"
> > rows="10"
> > >
> >
> > <h:column>
> > <f:facet name="header">
> > <h:outputText
> > value="#{messages['label_taskId']}" />
> > </f:facet>
> > <h:outputText
> > value="#{task.taskId}" />
> > </h:column>
> >
> > <h:column>
> > <f:facet name="header">
> > <h:outputText
> > value="#{messages['label_weburi']}" />
> > </f:facet>
> >
> > <x:commandLink action="task"
> > immediate="true" >
> > <h:outputText
> > value="#{task.webFormURI}" />
> >
> > <x:updateActionListener
> > property="#{taskForm.taskId}" value="#{task.taskId}"
> > />
> > </x:commandLink>
> >
> > </h:column>
> >
> > </x:dataTable>
> >
> >
> > TaskForm.java
> >
> > import javax.faces.context.FacesContext;
> >
> > public class TaskForm {
> >
> > private String taskId = null;
> > private String webFormURI = null;
> >
> > public TaskForm(){
> > System.out.println("Task Form: " + taskId);
> > }
> >
> > public String getTaskId() {
> > return taskId;
> > }
> >
> > public void setTaskId(String taskId) {
> >
> > System.out.println("I m in setTaskId : " + taskId);
> > if(taskId != null){
> > InboxTask inboxTask = getList().getTask(taskId);
> > System.out.println("Complete Task : " +
> > inboxTask.toString());
> > if(inboxTask != null){
> > insId = inboxTask.getInsId();
> > webFormURI = inboxTask.getWebFormURI();
> > }
> > }
> > }
> >
> > public String getWebFormURI() {
> > return webFormURI;
> > }
> >
> > public void setWebFormURI(String webFormURI) {
> > this.webFormURI = webFormURI;
> > }
> >
> > private SelectTaskBean getList()
> > {
> > Object obj =
> > FacesContext.getCurrentInstance().getApplication().getVariableResolver()
> >
> > .resolveVariable(FacesContext.getCurrentInstance(),
> > "inboxTaskBean");
> > return (SelectTaskBean) obj;
> > }
> > }
> >
> > taskForm.jsp
> >
> >
> > <f:facet name="body">
> > <h:panelGroup>
> > <x:saveState
> > value="#{taskForm.taskId}" />
> >
> > <h:panelGrid columns="1"
> > styleClass="countryFormTable"
> >
> > columnClasses="countryFormLabels" >
> > <h:panelGroup>
> > <h:outputText
> > value="#{taskForm.taskId}" />
> > <h:outputText
> > value="#{taskForm.webFormURI}" />
> >
> > </h:panelGroup>
> >
> > </h:panelGrid>
> > </h:panelGroup>
> > </f:facet>
> >
> >
> > Regards,
> > Farooq Mahmood
> > [EMAIL PROTECTED]
> >
> >
>