Sorry, I'm not that well versed in the extended datatable apart from a
few of its features.


On Wed, 16 Mar 2005 15:41:17 -0600, Jonathan Eric Miller
<[EMAIL PROTECTED]> wrote:
> Thanks, I should have checked the extensions documentation first. I figured
> that it would probably be the case that MyFaces would have an extension to
> do that. It would be nice if there was a way using standard JSF to do it
> though. I tried changing my h:dataTable to a x:dataTable, but, I receive the
> following exception when I do so.
> 
> Jon
> 
> Mar 16, 2005 3:33:10 PM com.sun.faces.lifecycle.ApplyRequestValuesPhase
> execute
> SEVERE: 4
> java.lang.ArrayIndexOutOfBoundsException: 4
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTableHack.refreshDescendantDataStates(HtmlDataTableHack.java:174)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTableHack.saveDescendantComponentStates(HtmlDataTableHack.java:147)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTableHack.setRowIndex(HtmlDataTableHack.java:71)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTable.setRowIndex(HtmlDataTable.java:168)
>        at javax.faces.component.UIData.iterate(UIData.java:989)
>        at javax.faces.component.UIData.processDecodes(UIData.java:737)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTable.processDecodes(HtmlDataTable.java:180)
>        at
> javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
>        at javax.faces.component.UIForm.processDecodes(UIForm.java:144)
>        at
> javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
>        at
> javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:306)
>        at
> com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:79)
>        at
> com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java: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
> edu.uchicago.at.alt.SessionManager.doFilter(SessionManager.java:41)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>        at
> edu.uchicago.at.servlet.http.SessionExpiredFilter.doFilter(SessionExpiredFilter.java:33)
>        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:214)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>        at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>        at
> org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
>        at
> org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:392)
>        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:825)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
>        at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
>        at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>        at java.lang.Thread.run(Unknown Source)
> Mar 16, 2005 3:33:10 PM org.apache.catalina.core.StandardWrapperValve invoke
> SEVERE: Servlet.service() for servlet facesServlet threw exception
> java.lang.ArrayIndexOutOfBoundsException: 4
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTableHack.refreshDescendantDataStates(HtmlDataTableHack.java:174)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTableHack.saveDescendantComponentStates(HtmlDataTableHack.java:147)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTableHack.setRowIndex(HtmlDataTableHack.java:71)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTable.setRowIndex(HtmlDataTable.java:168)
>        at javax.faces.component.UIData.iterate(UIData.java:989)
>        at javax.faces.component.UIData.processDecodes(UIData.java:737)
>        at
> org.apache.myfaces.component.html.ext.HtmlDataTable.processDecodes(HtmlDataTable.java:180)
>        at
> javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
>        at javax.faces.component.UIForm.processDecodes(UIForm.java:144)
>        at
> javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:880)
>        at
> javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:306)
>        at
> com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:79)
>        at
> com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java: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
> edu.uchicago.at.alt.SessionManager.doFilter(SessionManager.java:41)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>        at
> org.apache.myfaces.component.html.util.ExtensionsFilter.doFilter(ExtensionsFilter.java:119)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>        at
> edu.uchicago.at.servlet.http.SessionExpiredFilter.doFilter(SessionExpiredFilter.java:33)
>        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:214)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>        at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>        at
> org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481)
>        at
> org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:392)
>        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:825)
>        at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
>        at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
>        at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>        at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>        at java.lang.Thread.run(Unknown Source)
> 
> ----- Original Message -----
> From: "Heath Borders" <[EMAIL PROTECTED]>
> To: "MyFaces Discussion" <[email protected]>
> Sent: Wednesday, March 16, 2005 3:08 PM
> Subject: Re: Easy way to make fields in first row of h:dataTable required?
> 
> > If you use the extended datatable, it puts the current rowIndex on the
> > request.
> >
> > You could then make your EL statement like "rowIndex == 0".  However,
> > this is supposing that you aren't paging your data.  It gets a little
> > more complicated in this case, but its still doable.
> >
> >
> > On Wed, 16 Mar 2005 14:46:46 -0600, Jonathan Eric Miller
> > <[EMAIL PROTECTED]> wrote:
> >> Does anyone know if there is an easy way to make it so that the fields in
> >> the first row of a h:dataTable are required, while making the remaining
> >> rows
> >> not required?
> >>
> >> What I'm wondering is if something similar to the following is possible.
> >> Note, the "firstRow == true" is just pseudo-code for what I want to do.
> >> If I
> >> remember correctly, JSTL has something like this.
> >>
> >> <h:dataTable id="references" value="#{applicationHandler.references}"
> >> var="reference">
> >> <h:column>
> >> <h:inputText id="name" required="#{firstRow == true}"
> >> value="#{reference.name}"/>
> >> </h:column>
> >> </h:dataTable>
> >>
> >> Failing this, I was thinking I could just have two h:dataTables, one
> >> after
> >> the other, with the first table only containing the first row. However,
> >> if
> >> the column widths are variable, then the columns won't line up correctly.
> >>
> >> Jon
> >>
> >>
> >
> >
> > --
> > -Heath Borders-Wing
> > [EMAIL PROTECTED]
> >
> 
> 


-- 
-Heath Borders-Wing
[EMAIL PROTECTED]

Reply via email to