5 Replies Latest reply on Mar 25, 2009 2:39 PM by nbelaevski

    extended data table javax.servlet.ServletException: srcBegin

    devonbl

      I'm using richfaces 3.3.0 and rich faces component extendedDataTable. When i attempt to rerender a form or panel that contains the extendedDataTable i get the following stack trace:

      javax.servlet.ServletException: srcBegin > srcEnd
       at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
       at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:532) ...
      


      If i replace the extendedDataTable on the page with a regular rich:dataTable the problem ceases to exist.
      I'm not sure if it will do any good, but my html is as follows. Any help would be appreciated.

      <ui:composition xmlns="http://www.w3.org/1999/xhtml"
       xmlns:ui="http://java.sun.com/jsf/facelets"
       xmlns:h="http://java.sun.com/jsf/html"
       xmlns:f="http://java.sun.com/jsf/core"
       xmlns:c="http://java.sun.com/jstl/core"
       xmlns:service="http://connect.garmin.com/jsf/service"
       xmlns:a4j="http://richfaces.org/a4j"
       xmlns:rich="http://richfaces.org/rich"
       xmlns:s="http://jboss.com/products/seam/taglib"
       template="/api/activity-search/template/activitiesDefault.xhtml">
      
       <ui:define name="content">
       <h:form id="activitiesForm">
       <rich:extendedDataTable id="activitiesGrid" value="#{activitiesListingDataModel}" var="row"
       rows="20" style="height: 524px"
       cellpadding="5" rowClasses="activityRow, activityRowAlternate"
       onRowMouseOver="activitiesHandler.highlightRow(this)"
       onRowMouseOut="activitiesHandler.unHighlightRow(this)">
       <rich:columns id="#{column.fieldName}Column" value="#{activityListingDataProvider.columns}"
       var="column" style="text-align:#{column.alignment};" label="#{column.columnHeader}"
       rendered="#{column.fieldName != 'privacy'}">
       <f:facet name="header">
       <a4j:commandLink value="#{column.columnHeader}"
       styleClass="ascSort"
       reRender="activitiesGrid, counter"
       title="#{column.unitOfMeasurement}">
       <a4j:actionparam name="sortField" value="#{column.fieldName}" />
       <a4j:actionparam name="sortWasClicked" value="true" />
       </a4j:commandLink>
       </f:facet>
       <h:outputText value="#{row.cellMap.get(column.fieldName).displayValue}"/>
       </rich:columns>
       </rich:extendedDataTable>
       <div class="activitiesToolBar left">
       <a4j:commandButton id="setToEdit" value="refreshGrid"
       action="#{activityListingDataProvider.setIsInEdit()}"
       reRender="activitiesForm">
       </a4j:commandButton>
       </div>
       <rich:panel id="counter" styleClass="counterPanel" rendered="#{not activityListingDataProvider.isInEdit}">
       <div class="activitiesFooterLeft">
       <rich:datascroller id="pageScroller" for="activitiesGrid" reRender="counter"
       page="#{activityListingDataProvider.scrollerPage}"
       align="center" maxPages="10" tableStyleClass="paginationTableStyle"/>
       </div>
       </rich:panel>
       </h:form>
       </ui:define>
      </ui:composition>
      


      devon.lindsey@garmin.com

        • 1. Re: extended data table javax.servlet.ServletException: srcB
          nbelaevski

          Hi Devon,

          Can you please post complete stack trace?

          • 2. Re: extended data table javax.servlet.ServletException: srcB
            devonbl

             

            10:13:07,492 FATAL [lifecycle] JSF1054: (Phase ID: RENDER_RESPONSE 6, View ID: /page/home/activities.xhtml) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@1ea6975]
            10:13:07,492 WARN [ExceptionFilter] handling uncaught exception
            javax.servlet.ServletException: srcBegin > srcEnd
             at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:532)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
             at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
             at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
             at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
             at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
             at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at com.garmin.oauth.consumer.OAuthProxyFilter.doFilter(OAuthProxyFilter.java:109)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:78)
             at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
             at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
             at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
             at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at com.garmin.connect.filter.UTF8Filter.doFilter(UTF8Filter.java:21)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
             at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
             at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
             at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
             at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
             at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
             at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
             at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
             at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
             at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
             at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
             at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
             at java.lang.Thread.run(Thread.java:595)
            Caused by: java.lang.StringIndexOutOfBoundsException: srcBegin > srcEnd
             at java.lang.AbstractStringBuilder.getChars(AbstractStringBuilder.java:330)
             at com.sun.faces.renderkit.html_basic.HtmlResponseWriter.flushAttributes(HtmlResponseWriter.java:981)
             at com.sun.faces.renderkit.html_basic.HtmlResponseWriter.endElement(HtmlResponseWriter.java:489)
             at org.ajax4jsf.renderkit.AjaxRendererUtils.encodeAreas(AjaxRendererUtils.java:794)
             at org.ajax4jsf.renderkit.AjaxContainerRenderer.encodeAjax(AjaxContainerRenderer.java:126)
             at org.ajax4jsf.component.AjaxViewRoot.encodeAjax(AjaxViewRoot.java:677)
             at org.ajax4jsf.component.AjaxViewRoot.encodeChildren(AjaxViewRoot.java:548)
             at javax.faces.component.UIComponent.encodeAll(UIComponent.java:936)
             at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
             at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
             at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
             at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:109)
             at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
             at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
             at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
             ... 52 more
            10:13:07,492 WARN [ExceptionFilter] exception root cause
            java.lang.StringIndexOutOfBoundsException: srcBegin > srcEnd
             at java.lang.AbstractStringBuilder.getChars(AbstractStringBuilder.java:330)
             at com.sun.faces.renderkit.html_basic.HtmlResponseWriter.flushAttributes(HtmlResponseWriter.java:981)
             at com.sun.faces.renderkit.html_basic.HtmlResponseWriter.endElement(HtmlResponseWriter.java:489)
             at org.ajax4jsf.renderkit.AjaxRendererUtils.encodeAreas(AjaxRendererUtils.java:794)
             at org.ajax4jsf.renderkit.AjaxContainerRenderer.encodeAjax(AjaxContainerRenderer.java:126)
             at org.ajax4jsf.component.AjaxViewRoot.encodeAjax(AjaxViewRoot.java:677)
             at org.ajax4jsf.component.AjaxViewRoot.encodeChildren(AjaxViewRoot.java:548)
             at javax.faces.component.UIComponent.encodeAll(UIComponent.java:936)
             at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
             at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)
             at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)
             at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:109)
             at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
             at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
             at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:532)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:83)
             at org.jboss.seam.web.IdentityFilter.doFilter(IdentityFilter.java:40)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:90)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
             at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
             at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
             at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
             at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
             at com.garmin.oauth.consumer.OAuthProxyFilter.doFilter(OAuthProxyFilter.java:109)
             at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:78)
             at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
             at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
             at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
             at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at com.garmin.connect.filter.UTF8Filter.doFilter(UTF8Filter.java:21)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
             at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
             at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
             at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
             at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
             at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
             at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
             at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
             at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
             at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
             at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
             at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
             at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
             at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
             at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
             at java.lang.Thread.run(Thread.java:595)
            10:13:07,492 WARN [ExceptionFilter] running exception handlers
            


            • 3. Re: extended data table javax.servlet.ServletException: srcB
              nbelaevski

              Are you using JSF 1.2_08?

              • 4. Re: extended data table javax.servlet.ServletException: srcB
                devonbl

                our jsf versions are as follows:

                 <dependency>
                 <groupId>javax.faces</groupId>
                 <artifactId>jsf-api</artifactId>
                 <version>1.2_02</version>
                 <scope>provided</scope>
                 </dependency>
                 <dependency>
                 <groupId>javax.faces</groupId>
                 <artifactId>jsf-impl</artifactId>
                 <version>1.2-b19</version>
                 <scope>provided</scope>
                 </dependency>
                


                • 5. Re: extended data table javax.servlet.ServletException: srcB
                  nbelaevski

                  That are outdated versions. I suggest that you update to a fresher JSF, most likely problem will disappear.