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]

