You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Ronny Løvtangen <ro...@lovtangen.com> on 2009/02/10 17:28:54 UTC

s:include fails with BufferOverflowException, jsp:include works fine

Hi

I have a problem with s:include and BufferOverflowException.
If I replace s:include with jsp:include then everything is fine.
Is it something I'm missing, or should I not rely on s:include?



main jsp (from result = success):
------------------------------------------

<s:include value="include/measurementSearchInput.jsp"/>



measurementSearchInput.jsp:
----------------------------------------

<s:select list="trainNumbers" name="searchInput.trainNumber"  
emptyOption="true" />
<s:select list="measureUnitNumbers" name="searchInput.measureUnitNr"  
emptyOption="true"/>
<s:submit/>





The first list is enormous: 2093 elements. The second list is not that  
big, "only" 170 elements.

If I remove one of the dropdowns, the page just dies silently. The  
list of options is truncated and I never see the submit button:

    <option value="XX2741">XX2741</option>
     <option value="XXSK
			

If I include both list, then at least I get an exception  
(BufferOverflowException). See stacktrace beneath.


Of course, I could just stick to jsp:include in this case. But I  
wonder if this is a known problem with s:include, and is there  
something I could do about it?

(Struts version is 2.1.6, and I run with 'mvn tomcat:run', haven't  
tried to deploy to a 'real' tomcat yet')


Regards
Ronny Løvtangen




01:08,913 WARN org.apache.struts2.components.Include - Exception  
thrown during include of include/measurementSearchInput.jsp
java.nio.BufferOverflowException
	at java.nio.HeapByteBuffer.put(HeapByteBuffer.java:165)
	at  
org 
.apache 
.struts2 
.util 
.FastByteArrayOutputStream 
.decodeAndWriteOut(FastByteArrayOutputStream.java:151)
	at  
org 
.apache 
.struts2 
.util.FastByteArrayOutputStream.writeTo(FastByteArrayOutputStream.java: 
94)
	at org.apache.struts2.components.Include.include(Include.java:261)
	at org.apache.struts2.components.Include.end(Include.java:166)
	at  
org 
.apache 
.struts2 
.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
	at  
org 
.apache 
.jsp 
.WEB_002dINF 
.jsp 
.reports 
.energy_jsp 
._jspx_meth_s_include_1 
(org.apache.jsp.WEB_002dINF.jsp.reports.energy_jsp:300)
	at  
org 
.apache 
.jsp 
.WEB_002dINF 
.jsp 
.reports 
.energy_jsp 
._jspx_meth_s_form_0(org.apache.jsp.WEB_002dINF.jsp.reports.energy_jsp: 
269)
	at  
org 
.apache 
.jsp 
.WEB_002dINF 
.jsp 
.reports 
.energy_jsp 
._jspx_meth_s_param_1 
(org.apache.jsp.WEB_002dINF.jsp.reports.energy_jsp:225)
	at  
org 
.apache 
.jsp 
.WEB_002dINF 
.jsp 
.reports 
.energy_jsp 
._jspx_meth_s_component_0 
(org.apache.jsp.WEB_002dINF.jsp.reports.energy_jsp:130)
	at  
org 
.apache 
.jsp 
.WEB_002dINF 
.jsp 
.reports 
.energy_jsp 
._jspService(org.apache.jsp.WEB_002dINF.jsp.reports.energy_jsp:75)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at  
org 
.apache 
.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	at  
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at  
org 
.apache 
.catalina 
.core 
.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 
252)
	at  
org 
.apache 
.catalina 
.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at  
org 
.apache 
.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java: 
672)
	at  
org 
.apache 
.catalina 
.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java: 
463)
	at  
org 
.apache 
.catalina 
.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)
	at  
org 
.apache 
.catalina 
.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
	at  
org 
.apache 
.struts2 
.dispatcher 
.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:154)
	at  
org 
.apache 
.struts2 
.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
	at  
com 
.opensymphony 
.xwork2 
.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:361)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:265)
	at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
	at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at  
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:230)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:912)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
	at  
org 
.codehaus 
.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:766)
	at  
org 
.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java: 
754)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:170)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:198)
	at  
no 
.arrive 
.enka 
.interceptor 
.ActionTimeLogInterceptor.intercept(ActionTimeLogInterceptor.groovy:24)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.DefaultWorkflowInterceptor 
.doIntercept(DefaultWorkflowInterceptor.java:163)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.validator 
.ValidationInterceptor.doIntercept(ValidationInterceptor.java:249)
	at  
org 
.apache 
.struts2 
.interceptor 
.validation 
.AnnotationValidationInterceptor 
.doIntercept(AnnotationValidationInterceptor.java:68)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java: 
122)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.ParametersInterceptor.doIntercept(ParametersInterceptor.java:195)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.StaticParametersInterceptor 
.intercept(StaticParametersInterceptor.java:148)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
org 
.apache 
.struts2 
.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:93)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
org 
.apache 
.struts2 
.interceptor 
.FileUploadInterceptor.intercept(FileUploadInterceptor.java:235)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:89)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.ScopedModelDrivenInterceptor 
.intercept(ScopedModelDrivenInterceptor.java:128)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
org 
.apache 
.struts2 
.interceptor 
.ProfilingActivationInterceptor 
.intercept(ProfilingActivationInterceptor.java:104)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
org 
.apache 
.struts2 
.interceptor 
.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:148)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:138)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:87)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
org 
.apache 
.struts2 
.interceptor 
.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java: 
128)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
com 
.opensymphony 
.xwork2 
.interceptor 
.ExceptionMappingInterceptor 
.intercept(ExceptionMappingInterceptor.java:176)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
	at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at  
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:230)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:912)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
	at  
org 
.codehaus 
.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:766)
	at  
org 
.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java: 
754)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:170)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:198)
	at  
no 
.arrive 
.enka 
.interceptor 
.AjaxRequestInterceptor.intercept(AjaxRequestInterceptor.groovy:23)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
	at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at  
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:230)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:912)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
	at  
org 
.codehaus 
.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:766)
	at  
org 
.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java: 
754)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:170)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:198)
	at  
no 
.arrive 
.enka 
.interceptor 
.UserContextInterceptor.intercept(UserContextInterceptor.groovy:25)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at sun.reflect.GeneratedMethodAccessor54.invoke(Unknown Source)
	at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at  
org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86)
	at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:230)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:912)
	at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:756)
	at  
org 
.codehaus 
.groovy.runtime.InvokerHelper.invokePojoMethod(InvokerHelper.java:766)
	at  
org 
.codehaus.groovy.runtime.InvokerHelper.invokeMethod(InvokerHelper.java: 
754)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethodN(ScriptBytecodeAdapter.java:170)
	at  
org 
.codehaus 
.groovy 
.runtime 
.ScriptBytecodeAdapter.invokeMethod0(ScriptBytecodeAdapter.java:198)
	at  
no 
.arrive 
.enka 
.interceptor 
.AuthenticationInterceptor.intercept(AuthenticationInterceptor.groovy: 
55)
	at  
com 
.opensymphony 
.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:236)
	at  
org 
.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java: 
52)
	at  
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java: 
468)
	at  
org 
.apache 
.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
	at  
org 
.apache 
.catalina 
.core 
.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 
202)
	at  
org 
.apache 
.catalina 
.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at  
com 
.opensymphony 
.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:119)
	at  
com 
.opensymphony 
.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:55)
	at  
org 
.apache 
.catalina 
.core 
.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: 
202)
	at  
org 
.apache 
.catalina 
.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at  
org 
.apache 
.struts2 
.dispatcher.ActionContextCleanUp.doFilter(ActionContextCleanUp.java:102)
	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: 
213)
	at  
org 
.apache 
.catalina.core.StandardContextValve.invoke(StandardContextValve.java: 
178)
	at  
org 
.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java: 
126)
	at  
org 
.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java: 
105)
	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: 
869)
	at org.apache.coyote.http11.Http11BaseProtocol 
$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
	at  
org 
.apache 
.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	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(Thread.java:637)



---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org