Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Join Chat, Leave Chat, Join Chat, Post Message causes IllegalArgumentException: Invalid message index #3

Open
rwinch opened this issue Oct 29, 2012 · 3 comments

Comments

@rwinch
Copy link
Contributor

rwinch commented Oct 29, 2012

To reproduce

  • Start the application
  • Type http://localhost:8080/spring-mvc-chat/ into the browser (I use Chrome) and press enter
  • Type in a user (I use "a") and press "Join Chat"
  • Press the "Leave Chat" button
  • Type in a different user (I use "b") and press "Join Chat"
  • Type in a message (I use "1") and press "Post"
  • The result is an exception similar to the following (message index = 2 and messages.size() = 1):
15:43:04 [http-bio-8080-exec-10] DEBUG o.s.web.servlet.DispatcherServlet - Could not complete request
java.lang.IllegalArgumentException: Invalid message index
    at org.springframework.util.Assert.isTrue(Assert.java:65) ~[spring-core-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.samples.async.chat.InMemoryChatRepository.getMessages(InMemoryChatRepository.java:35) ~[InMemoryChatRepository.class:na]
    at org.springframework.samples.async.chat.ChatController.getMessages(ChatController.java:39) ~[ChatController.class:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.6.0_32]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ~[na:1.6.0_32]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[na:1.6.0_32]
    at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_32]
    at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:219) ~[spring-web-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132) ~[spring-web-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) ~[spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:757) ~[spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:698) ~[spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80) ~[spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925) ~[spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856) ~[spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:911) [spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:807) [spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) [servlet-api.jar:na]
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:792) [spring-webmvc-3.2.0.BUILD-SNAPSHOT.jar:3.2.0.BUILD-SNAPSHOT]
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) [servlet-api.jar:na]
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) [catalina.jar:7.0.32]
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) [catalina.jar:7.0.32]
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) [catalina.jar:7.0.32]
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) [catalina.jar:7.0.32]
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) [catalina.jar:7.0.32]
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) [catalina.jar:7.0.32]
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) [catalina.jar:7.0.32]
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:929) [catalina.jar:7.0.32]
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) [catalina.jar:7.0.32]
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) [catalina.jar:7.0.32]
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1002) [tomcat-coyote.jar:7.0.32]
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) [tomcat-coyote.jar:7.0.32]
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) [tomcat-coyote.jar:7.0.32]
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [na:1.6.0_32]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [na:1.6.0_32]
    at java.lang.Thread.run(Thread.java:662) [na:1.6.0_32]
@cmadsen
Copy link

cmadsen commented Aug 23, 2013

Using Tomcat 7.0.32 or higher?

@rwinch
Copy link
Contributor Author

rwinch commented Aug 23, 2013

@cmadsen - In all honesty I'm not entirely sure what version I was using. Are you trying to reproduce this or having similar issues?

@cmadsen
Copy link

cmadsen commented Aug 26, 2013

I got a similar stack trace until I switched to tomcat 7.0.32

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants