You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Debraj Mallick <sr...@gmail.com> on 2011/11/28 13:02:56 UTC
exception while setting cookie
hi all,
i am setting cookie form action and i am getting exception :
org.apache.catalina.connector.CoyoteAdapter service
SEVERE: An exception or error occurred in the container during the request
processing
java.lang.ArrayIndexOutOfBoundsException
org.apache.coyote.http11.AbstractHttp11Processor endRequest
SEVERE: Error finishing response
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at
org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:491)
at
org.apache.coyote.http11.AbstractOutputBuffer.sendStatus(AbstractOutputBuffer.java:331)
at
org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:952)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
at org.apache.coyote.Response.action(Response.java:168)
at
org.apache.coyote.http11.AbstractOutputBuffer.endRequest(AbstractOutputBuffer.java:308)
at
org.apache.coyote.http11.InternalOutputBuffer.endRequest(InternalOutputBuffer.java:160)
at
org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:990)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:350)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:182)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
my
i am using Struts 2.2.3.1 with tomcat 7
Re: exception while setting cookie
Posted by Maurizio Cucchiara <ma...@gmail.com>.
You should consider to use the session scope for this kind of use case
(though it could cause memory leak exception).
Aside from this is not a Struts issue
Sent from my mobile device, so please excuse typos and brevity.
Maurizio Cucchiara
Il giorno 28/nov/2011 14.25, "JOSE L MARTINEZ-AVIAL" <jl...@gmail.com> ha
scritto:
It seems that your cookie is bigger than the maximum admitted(which is 4k).
2011/11/28 Debraj Mallick <sr...@gmail.com>
> *my action : *
>
> public class SetCookie...
Re: exception while setting cookie
Posted by JOSE L MARTINEZ-AVIAL <jl...@gmail.com>.
It seems that your cookie is bigger than the maximum admitted(which is 4k).
2011/11/28 Debraj Mallick <sr...@gmail.com>
> *my action : *
>
> public class SetCookieAction extends ActionSupport implements
> ServletRequestAware, ServletResponseAware {
>
> private List<IngredientBean> ingredientBeanList;
>
> protected HttpServletResponse servletResponse;
>
> @Override
> public void setServletResponse(HttpServletResponse servletResponse) {
> this.servletResponse = servletResponse;
> }
>
> protected HttpServletRequest servletRequest;
>
> @Override
> public void setServletRequest(HttpServletRequest servletRequest) {
> this.servletRequest = servletRequest;
> }
>
> public String AddCookie() {
>
> Gson gson = new Gson();
> ingredientBeanList = ingredientService.obtainAllIngredientsByUserId(new
> Long(2));
> String gstr = gson.toJson(ingredientBeanList);
> String str = Base64.encode(gstr.getBytes());
> Cookie mycookie = new Cookie("ingredientList", str);
> mycookie.setMaxAge(60*60*24*365);
> servletResponse.addCookie(mycookie);
> }
>
> public IngredientService getIngredientService() {
> return ingredientService;
> }
> public void setIngredientService(IngredientService ingredientService) {
> this.ingredientService = ingredientService;
> }
> }
>
> *stack trace:*
> *
> *
> org.apache.catalina.connector.CoyoteAdapter service
> SEVERE: An exception or error occurred in the container during the request
> processing
> java.lang.ArrayIndexOutOfBoundsException: 8192
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:522)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:429)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.sendHeader(AbstractOutputBuffer.java:395)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:965)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
> at org.apache.coyote.Response.action(Response.java:170)
> at org.apache.coyote.Response.sendHeaders(Response.java:350)
> at
> org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:315)
> at org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:275)
> at org.apache.catalina.connector.Response.finishResponse(Response.java:501)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:426)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
> at
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
> at
>
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
> at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> org.apache.coyote.http11.AbstractHttp11Processor endRequest
> SEVERE: Error finishing response
> java.lang.ArrayIndexOutOfBoundsException
> at java.lang.System.arraycopy(Native Method)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:491)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.sendStatus(AbstractOutputBuffer.java:331)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:952)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
> at org.apache.coyote.Response.action(Response.java:168)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.endRequest(AbstractOutputBuffer.java:308)
> at
>
> org.apache.coyote.http11.InternalOutputBuffer.endRequest(InternalOutputBuffer.java:160)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:990)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:350)
> at
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
> at
>
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
> at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
> org.apache.catalina.connector.CoyoteAdapter service
> SEVERE: An exception or error occurred in the container during the request
> processing
> java.lang.ArrayIndexOutOfBoundsException
> org.apache.coyote.http11.AbstractHttp11Processor endRequest
> SEVERE: Error finishing response
> java.lang.ArrayIndexOutOfBoundsException
> at java.lang.System.arraycopy(Native Method)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:491)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.sendStatus(AbstractOutputBuffer.java:331)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:952)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
> at org.apache.coyote.Response.action(Response.java:168)
> at
>
> org.apache.coyote.http11.AbstractOutputBuffer.endRequest(AbstractOutputBuffer.java:308)
> at
>
> org.apache.coyote.http11.InternalOutputBuffer.endRequest(InternalOutputBuffer.java:160)
> at
>
> org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:990)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:350)
> at
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
> at
>
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:182)
> at
>
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
> at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
>
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
>
> i am using struts2.2.3.1, tomcat7 and STS
>
Re: exception while setting cookie
Posted by Debraj Mallick <sr...@gmail.com>.
*my action : *
public class SetCookieAction extends ActionSupport implements
ServletRequestAware, ServletResponseAware {
private List<IngredientBean> ingredientBeanList;
protected HttpServletResponse servletResponse;
@Override
public void setServletResponse(HttpServletResponse servletResponse) {
this.servletResponse = servletResponse;
}
protected HttpServletRequest servletRequest;
@Override
public void setServletRequest(HttpServletRequest servletRequest) {
this.servletRequest = servletRequest;
}
public String AddCookie() {
Gson gson = new Gson();
ingredientBeanList = ingredientService.obtainAllIngredientsByUserId(new
Long(2));
String gstr = gson.toJson(ingredientBeanList);
String str = Base64.encode(gstr.getBytes());
Cookie mycookie = new Cookie("ingredientList", str);
mycookie.setMaxAge(60*60*24*365);
servletResponse.addCookie(mycookie);
}
public IngredientService getIngredientService() {
return ingredientService;
}
public void setIngredientService(IngredientService ingredientService) {
this.ingredientService = ingredientService;
}
}
*stack trace:*
*
*
org.apache.catalina.connector.CoyoteAdapter service
SEVERE: An exception or error occurred in the container during the request
processing
java.lang.ArrayIndexOutOfBoundsException: 8192
at
org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:522)
at
org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:429)
at
org.apache.coyote.http11.AbstractOutputBuffer.sendHeader(AbstractOutputBuffer.java:395)
at
org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:965)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
at org.apache.coyote.Response.action(Response.java:170)
at org.apache.coyote.Response.sendHeaders(Response.java:350)
at org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:315)
at org.apache.catalina.connector.OutputBuffer.close(OutputBuffer.java:275)
at org.apache.catalina.connector.Response.finishResponse(Response.java:501)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:426)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:317)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
org.apache.coyote.http11.AbstractHttp11Processor endRequest
SEVERE: Error finishing response
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at
org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:491)
at
org.apache.coyote.http11.AbstractOutputBuffer.sendStatus(AbstractOutputBuffer.java:331)
at
org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:952)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
at org.apache.coyote.Response.action(Response.java:168)
at
org.apache.coyote.http11.AbstractOutputBuffer.endRequest(AbstractOutputBuffer.java:308)
at
org.apache.coyote.http11.InternalOutputBuffer.endRequest(InternalOutputBuffer.java:160)
at
org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:990)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:350)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
org.apache.catalina.connector.CoyoteAdapter service
SEVERE: An exception or error occurred in the container during the request
processing
java.lang.ArrayIndexOutOfBoundsException
org.apache.coyote.http11.AbstractHttp11Processor endRequest
SEVERE: Error finishing response
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at
org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:491)
at
org.apache.coyote.http11.AbstractOutputBuffer.sendStatus(AbstractOutputBuffer.java:331)
at
org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:952)
at
org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
at org.apache.coyote.Response.action(Response.java:168)
at
org.apache.coyote.http11.AbstractOutputBuffer.endRequest(AbstractOutputBuffer.java:308)
at
org.apache.coyote.http11.InternalOutputBuffer.endRequest(InternalOutputBuffer.java:160)
at
org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:990)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:350)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:182)
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
i am using struts2.2.3.1, tomcat7 and STS
Re: exception while setting cookie
Posted by Ćukasz Lenart <lu...@googlemail.com>.
I don't see any connections with Struts 2 code, could you provide more
details and the whole stack trace ?
Regards
--
Lukasz
2011/11/28 Debraj Mallick <sr...@gmail.com>:
> hi all,
>
> i am setting cookie form action and i am getting exception :
>
> org.apache.catalina.connector.CoyoteAdapter service
> SEVERE: An exception or error occurred in the container during the request
> processing
> java.lang.ArrayIndexOutOfBoundsException
> org.apache.coyote.http11.AbstractHttp11Processor endRequest
> SEVERE: Error finishing response
> java.lang.ArrayIndexOutOfBoundsException
> at java.lang.System.arraycopy(Native Method)
> at
> org.apache.coyote.http11.AbstractOutputBuffer.write(AbstractOutputBuffer.java:491)
> at
> org.apache.coyote.http11.AbstractOutputBuffer.sendStatus(AbstractOutputBuffer.java:331)
> at
> org.apache.coyote.http11.AbstractHttp11Processor.prepareResponse(AbstractHttp11Processor.java:952)
> at
> org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:739)
> at org.apache.coyote.Response.action(Response.java:168)
> at
> org.apache.coyote.http11.AbstractOutputBuffer.endRequest(AbstractOutputBuffer.java:308)
> at
> org.apache.coyote.http11.InternalOutputBuffer.endRequest(InternalOutputBuffer.java:160)
> at
> org.apache.coyote.http11.AbstractHttp11Processor.endRequest(AbstractHttp11Processor.java:990)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:350)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:204)
> at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:182)
> at
> org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:311)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:662)
>
> my
>
> i am using Struts 2.2.3.1 with tomcat 7
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org