org.apache.struts2.util.FastByteArrayOutputStream.decodeAndWriteOut

时间:2016-02-22 06:47:00

标签: struts2

  

org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)atg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at iconcept.filter.NavigationFilter.doFilter(NavigationFilter) .java:107)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)atg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at common.util.HibernateSessionRequestFilter。 doFilter(HibernateSessionRequestFilter.java:117)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)atg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at common.util .DisableUrlSessionFilter.doFilter(DisableUrlSessionFilter.java:57)org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)org.apache.catalina.core.ApplicationFilterChain.doFilter(Applicatio nFilterChain.java:206)org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)org.apache.catalina .authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102 )org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:568)org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)org.apache.catalina.connector.CoyoteAdapter。服务(CoyoteAdapter.java:286)org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)atg.apache位于org.apache.jk的org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)的.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)。 common.ChannelSocket $ SocketConnection.runIt(ChannelSocket.java:889)atg.apache.tomcat.util.threads.ThreadPool $ ControlRunnable.run(ThreadPool.java:690)at java.lang.Thread.run(Thread.java: 619)引起的:类:java.nio.HeapByteBuffer文件:HeapByteBuffer.java方法:在org.apache.struts2.components.UIBean.end(UIBean)中放行:165 - java / nio / HeapByteBuffer.java:165:-1 .java:515)org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)org.apache.jsp.admin.snsales.addPurchaseOrderAgrmnt_jsp._jspx_meth_s_005fcomponent_005f0(addPurchaseOrderAgrmnt_jsp.java:7012)at org。 apache.jsp.admin.snsales.addPurchaseOrderAgrmnt_jsp._jspx_meth_s_005fif_005f8在org.apache.jsp.admin.snsales(addPurchaseOrderAgrmnt_jsp.java:6956)在org.apache.jsp.admin.snsales.addPurchaseOrderAgrmnt_jsp._jspx_meth_s_005fform_005f0(addPurchaseOrderAgrmnt_jsp.java:5227)。 org.apache.jasper.runtime.HttpJspBas中的addPurchaseOrderAgrmnt_jsp._jspService(addPurchaseOrderAgrmnt_jsp.java:3178) e.service(HttpJspBase.java:70)位于org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)的javax.servlet.http.HttpServlet.service(HttpServlet.java:717)中... 89更多由:org.apache.struts2上的org.apache.struts2.util.FastByteArrayOutputStream.decodeAndWriteOut(FastByteArrayOutputStream.java:161)中的java.nio.HeapByteBuffer.put(HeapByteBuffer.java:165)中的java.nio.BufferOverflowException引起的。 org.apache.struts中的util.FastByteArrayOutputStream.writeTo(FastByteArrayOutputStream.java:94)org.apache.include.include(Include.java:261)org.apache.struts2.components.template.JspTemplateEngine.renderTemplate(JspTemplateEngine.java: 58)org.apache.struts2.components.UIBean.mergeTemplate(UIBean.java:559)at org.apache.struts2.components.UIBean.end(UIBean.java:513)... 97 more

2 个答案:

答案 0 :(得分:0)

s:component标记引起的问题,该标记用于呈现自定义UI小部件的模板。

它与s:include标记的工作方式相同,可以将内容写入输出流。它使用FastByteArrayOutputStream来编写内容。它有一个大小为8192的缓冲区。此缓冲区已溢出。

这可能是在较新版本的Struts2框架中修复的错误。

答案 1 :(得分:0)

您可以在一个变量中设置值并将该变量传递给tag 并将其发送到组件jsp。

<s:set var="po" value="%{snPurchaseOrder}"></s:set>
        <s:push value="po">
        <jsp:include page="/template/xhtml/snsales/poComponentInfoNew.jsp">
    </jsp:include>
</s:push>

在子jsp中,您可以通过#variable等名称访问#po。