Hi Daniel, If you are changing the value of the fields with javascript, then the squeeze prefix character is getting lost. Since the data squeezer parses the field value type from its first character, it expects a string at least one character long.
If the value in the field is a string, you can disable data squeezing by setting encode="ognl:false" for the field. We had problems with hidden fields, and disabling data squeezing solved them. Best wishes John -----Original Message----- From: Daniel M Garland [mailto:[EMAIL PROTECTED] Sent: Wednesday, December 14, 2005 12:55 PM To: Tapestry users Subject: StringIndexOutOfBounds with Hidden (but not TextField) Hi all, When i'm using forms I sometimes get a StringIndexOutOfBoundsException when submitting a form that has Hidden components. Changing them to TextField seems to work; I hide them again using CSS. Any ideas why this is / what i'm doing wrong? String index out of range: 0 Stack Trace: * java.lang.String.charAt(String.java:558) * org.apache.tapestry.util.io.DataSqueezer.unsqueeze(DataSqueezer.java:212 ) * org.apache.tapestry.form.Hidden.renderComponent(Hidden.java:98) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:857) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java: 624) * org.apache.tapestry.components.Conditional.renderComponent(Conditional.j ava:56) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:857) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java: 624) * org.apache.tapestry.form.Form.renderComponent(Form.java:362) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:857) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java: 624) * org.apache.tapestry.components.Foreach.renderComponent(Foreach.java:122) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:857) * org.apache.tapestry.AbstractComponent.renderBody(AbstractComponent.java: 624) * org.apache.tapestry.html.Body.renderComponent(Body.java:269) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:857) * org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:118 ) * org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:857) * org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:300) * org.apache.tapestry.engine.RequestCycle.rewindPage(RequestCycle.java:505 ) * org.apache.tapestry.engine.ActionService.service(ActionService.java:158) * org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:88 9) * org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java :198) * org.apache.tapestry.ApplicationServlet.doPost(ApplicationServlet.java:32 7) * javax.servlet.http.HttpServlet.service(HttpServlet.java:709) * javax.servlet.http.HttpServlet.service(HttpServlet.java:802) * org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applica tionFilterChain.java:252) * org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilt erChain.java:173) * org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValv e.java:213) * org.apache.catalina.core.StandardContextValve.invoke(StandardContextValv e.java:178) * org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authenticator Base.java:482) * org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java :126) * org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java :105) * org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:526 ) * org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve. java:107) * org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:1 48) * org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:85 6) * org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processC onnection(Http11Protocol.java:744) * org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint .java:527) * org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollow erWorkerThread.java:80) * org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool .java:684) * java.lang.Thread.run(Thread.java:595) Cheers -- Dan Garland ------------------------ [EMAIL PROTECTED] icq: 120963437 aim: dmgarland1767 ______________________________________________________________________ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email ______________________________________________________________________ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
