我有一个主JSP页面,它使用<s:include/>
标记包含3个其他JSP文件。其中一个JSP文件有大文本体。当action类返回成功时,应该调用master JSP,如果从其他3个JSP-s加载内容。这样做就是抛出BufferOverflowException
:
java.nio.BufferOverflowException
at java.nio.HeapByteBuffer.put(Unknown Source)
at org.apache.struts2.util.FastByteArrayOutputStream.decodeAndWriteOut(FastByteArrayOutputStream.java:150)
at org.apache.struts2.util.FastByteArrayOutputStream.writeTo(FastByteArrayOutputStream.java:93)
at org.apache.struts2.components.Include.include(Include.java:260)
at org.apache.struts2.components.Include.end(Include.java:153)
at org.apache.struts2.views.jsp.ComponentTagSupport.doEndTag(ComponentTagSupport.java:42)
我尝试过以下方法,但仍然得到相同的例外
1)将页面属性添加到JSP-s <%@ page buffer="64kb" autoFlush="true"%>
2)修改了server.xml中的连接器条目
<Connector connectionTimeout="20000" port="8081" protocol="org.apache.coyote.http11.Http11NioProtocol" redirectPort="8443" socket.appWriteBufSize="64000"/>
任何建议都将不胜感激。