{"action":"closed","issue":{"url":"https://api.github.com/repos/Atmosphere/atmosphere/issues/1991","labels_url":"https://api.github.com/repos/Atmosphere/atmosphere/issues/1991/labels{/name}","comments_url":"https://api.github.com/repos/Atmosphere/atmosphere/issues/1991/comments","events_url":"https://api.github.com/repos/Atmosphere/atmosphere/issues/1991/events","html_url":"https://github.com/Atmosphere/atmosphere/issues/1991","id":86298196,"number":1991,"title":"js Client Messages gets dropped/ignored by atmosphere ","user":{"login":"mmhmmh","id":1278535,"avatar_url":"https://avatars.githubusercontent.com/u/1278535?v=3","gravatar_id":"","url":"https://api.github.com/users/mmhmmh","html_url":"https://github.com/mmhmmh","followers_url":"https://api.github.com/users/mmhmmh/followers","following_url":"https://api.github.com/users/mmhmmh/following{/other_user}","gists_url":"https://api.github.com/users/mmhmmh/gists{/gist_id}","starred_url":"https://api.github.com/users/mmhmmh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mmhmmh/subscriptions","organizations_url":"https://api.github.com/users/mmhmmh/orgs","repos_url":"https://api.github.com/users/mmhmmh/repos","events_url":"https://api.github.com/users/mmhmmh/events{/privacy}","received_events_url":"https://api.github.com/users/mmhmmh/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-06-08T19:21:00Z","updated_at":"2015-06-08T20:20:33Z","closed_at":"2015-06-08T20:20:33Z","body":"For some reason, the atmosphere will drop all messages sent from the js client when it get into a bugged state.\r\n\r\nDebug tracing points to the following block of code.\r\n\r\n            Method invokedMethod = (Method) request.localAttributes().remove(getClass().getName());\r\n            if (invokedMethod != null) {\r\n                for (MethodInfo m : onRuntimeMethod) {\r\n                    if (invokedMethod.equals(m.method)) {\r\n                        return m.encode(encoders, o);\r\n                    }\r\n                }\r\n            }\r\n\r\n**Additional details:**\r\nThere are 3 @Message annotation used. One of which has two parameters of the resource + the message, lets call this method A. The other two only has the message and no resource as parameter lets call this method B and C.\r\n\r\nThe message is for sure received by atmosphere through the use of debug interceptor.\r\n\r\n**Problem:**\r\nWhen the message comes in from the client side that is supposedly be parsed by method B decoder, the first line will return an invokeMethod that is the @Message annotated method A and thus skip the decoding and invoking method B.\r\n\r\nThis will happen for ALL subsequent messages coming form the client.\r\n\r\nThis bugged state will not happen always but when it gets into the bugged state it will stay there until either server restart. Refreshing the page will sometimes help.\r\n\r\nAny insight in why this is happening is greatly appreciated. I tried reading the code but could not grasp what is going on.\r\n\r\n"}}