论坛首页 Java企业应用论坛

tomcat开发过程中遇到ArrayIndexOutOfBoundsException

浏览 8647 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-09-13  
现在做一个反馈页面,反馈内容采用<texrarea>接收输入,采用form 表单post方式提交,当反馈内容长到一定程度的时候,点提交按钮后,后台报如下错误,请帮忙分析是何缘故,谢谢了!
ps:使用的tomcat版本是6.0.32
2011-9-13 10:47:18 org.apache.catalina.connector.CoyoteAdapter service
严重: An exception or error occurred in the container during the request processing
java.lang.ArrayIndexOutOfBoundsException: 8192
	at org.apache.coyote.http11.InternalOutputBuffer.write(InternalOutputBuffer.java:734)
	at org.apache.coyote.http11.InternalOutputBuffer.write(InternalOutputBuffer.java:641)
	at org.apache.coyote.http11.InternalOutputBuffer.sendHeader(InternalOutputBuffer.java:514)
	at org.apache.coyote.http11.Http11Processor.prepareResponse(Http11Processor.java:1639)
	at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:956)
	at org.apache.coyote.Response.action(Response.java:183)
	at org.apache.coyote.Response.sendHeaders(Response.java:379)
	at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:305)
	at org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:273)
	at org.apache.catalina.connector.Response.finishResponse(Response.java:493)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:322)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)
2011-9-13 10:47:18 org.apache.coyote.http11.Http11Processor process
严重: Error finishing response
java.lang.ArrayIndexOutOfBoundsException
	at java.lang.System.arraycopy(Native Method)
	at org.apache.coyote.http11.InternalOutputBuffer.write(InternalOutputBuffer.java:703)
	at org.apache.coyote.http11.InternalOutputBuffer.sendStatus(InternalOutputBuffer.java:438)
	at org.apache.coyote.http11.Http11Processor.prepareResponse(Http11Processor.java:1626)
	at org.apache.coyote.http11.Http11Processor.action(Http11Processor.java:956)
	at org.apache.coyote.Response.action(Response.java:181)
	at org.apache.coyote.http11.InternalOutputBuffer.endRequest(InternalOutputBuffer.java:398)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:901)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Unknown Source)
   发表时间:2011-09-13  
你确定是post过去的、?或者跳转时带到url上了。
看错误好像是url上的参数太长了。
页面重点代码。
跳转语句发来看看?
0 请登录后投票
   发表时间:2011-09-13  
代码如下:其中contextPath为工程名,filepath为工程下一级文件目录
<form action="<%=response.encodeRedirectURL(contextPath+"/"+filepath+"/filename.jsp?redirected=true)%>" method="post">
<textarea name="content" id="content" ></textarea><br/>
<input name="do"  type="hidden" value="1" />
<input type="submit" value="&#x63D0;&#x4EA4;" />
</form>
0 请登录后投票
   发表时间:2011-09-14  
santiagow 写道
代码如下:其中contextPath为工程名,filepath为工程下一级文件目录
<form action="<%=response.encodeRedirectURL(contextPath+"/"+filepath+"/filename.jsp)%>" method="post">
<textarea name="content" id="content" ></textarea><br/>
<input name="do"  type="hidden" value="1" />
<input type="submit" value="&#x63D0;&#x4EA4;" />
</form>


这段代码是没有问题。
我写了测试的jsp看过。不会报错。
我的tomcat是5.5.26
难道tomcat6有什么调整?
你把action的url那个?redirected=true 去掉。试试看
0 请登录后投票
   发表时间:2011-09-15  
试了,跟那个参数没有关系。
不知道是不是跟配置参数有关,同样的代码在本地测试服务器上没有问题,本机上有问题,明天再研究下配置参数
0 请登录后投票
   发表时间:2011-09-15  
post 超过2000字符就会出问题
0 请登录后投票
   发表时间:2011-09-16  
xxinsong 写道
post 超过2000字符就会出问题

0 请登录后投票
   发表时间:2011-09-16  
xxinsong 写道
post 超过2000字符就会出问题

post没限制吧,是想说get?
0 请登录后投票
   发表时间:2011-09-16  
bug是发生在form表单提交的时候,因为action指向的处理页面没有运行
0 请登录后投票
   发表时间:2011-09-16  
post有长度限制

maxPostSize:

设定允许透过POST上传参数的字节数,默认是2M(2097152),如果想禁掉该限制,则将该值设为一个小于或等于0 的值,如0、-1,如果所部署的应用中有上传工作,则需注意该配置
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics