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

bug::특정 상황에서 NPE 발생 #44

Closed
SeJonJ opened this issue Apr 26, 2024 · 1 comment
Closed

bug::특정 상황에서 NPE 발생 #44

SeJonJ opened this issue Apr 26, 2024 · 1 comment
Assignees
Labels
bug Something isn't working fixed 해결 완료!!

Comments

@SeJonJ
Copy link
Owner

SeJonJ commented Apr 26, 2024

아래 상황에서 NPE 발생

  • 방이 삭제된 이후 방에서 퇴장했을 때 발생하는 에러로 추정됨.
  • 방 안에 참여 인원이 있을때도 방 삭제가 가능한지 확인 후 수정필요
2024-04-25 08:37:35.444  INFO 1 --- [nio-8443-exec-8] webChat.service.chat.ChatServiceMain     : 삭제 완료 roomId : af327e6b-3537-464e-b4df-d3104c434b2e
2024-04-25 08:37:54.555  INFO 1 --- [nio-8443-exec-3] webChat.controller.ChatController        : DisConnEvent SessionDisconnectEvent[sessionId=ydthnsti, CloseStatus[code=1000, reason=null]]
2024-04-25 08:37:54.555  INFO 1 --- [nio-8443-exec-3] webChat.controller.ChatController        : headAccessor StompHeaderAccessor [headers={simpMessageType=DISCONNECT, stompCommand=DISCONNECT, simpSessionAttributes={roomId=af327e6b-3537-464e-b4df-d3104c434b2e, userUUID=d0df36b2-78ec-4dc5-a268-fcc5145bfe1c}, simpSessionId=ydthnsti}]
2024-04-25 08:37:54.560 ERROR 1 --- [nio-8443-exec-3] o.s.w.s.m.StompSubProtocolHandler        : Error publishing SessionDisconnectEvent[sessionId=ydthnsti, CloseStatus[code=1000, reason=null]]

java.lang.NullPointerException: null
	at webChat.service.chat.ChatServiceMain.minusUserCnt(ChatServiceMain.java:85) ~[classes!/:na]
	at webChat.controller.ChatController.webSocketDisconnectListener(ChatController.java:89) ~[classes!/:na]
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na]
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
	at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
	at org.springframework.context.event.ApplicationListenerMethodAdapter.doInvoke(ApplicationListenerMethodAdapter.java:344) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.context.event.ApplicationListenerMethodAdapter.processEvent(ApplicationListenerMethodAdapter.java:229) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.context.event.ApplicationListenerMethodAdapter.onApplicationEvent(ApplicationListenerMethodAdapter.java:166) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:421) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:378) ~[spring-context-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.messaging.StompSubProtocolHandler.publishEvent(StompSubProtocolHandler.java:415) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.messaging.StompSubProtocolHandler.afterSessionEnded(StompSubProtocolHandler.java:650) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.messaging.SubProtocolWebSocketHandler.clearSession(SubProtocolWebSocketHandler.java:530) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.messaging.SubProtocolWebSocketHandler.afterConnectionClosed(SubProtocolWebSocketHandler.java:399) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.handler.WebSocketHandlerDecorator.afterConnectionClosed(WebSocketHandlerDecorator.java:85) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.handler.LoggingWebSocketHandlerDecorator.afterConnectionClosed(LoggingWebSocketHandlerDecorator.java:72) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.handler.ExceptionWebSocketHandlerDecorator.afterConnectionClosed(ExceptionWebSocketHandlerDecorator.java:78) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession.delegateConnectionClosed(AbstractSockJsSession.java:439) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.sockjs.transport.handler.SockJsWebSocketHandler.afterConnectionClosed(SockJsWebSocketHandler.java:98) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.springframework.web.socket.adapter.standard.StandardWebSocketHandlerAdapter.onClose(StandardWebSocketHandlerAdapter.java:145) ~[spring-websocket-5.3.22.jar!/:5.3.22]
	at org.apache.tomcat.websocket.WsSession.fireEndpointOnClose(WsSession.java:767) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.WsSession.onClose(WsSession.java:748) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.WsFrameBase.processDataControl(WsFrameBase.java:367) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:296) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:133) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:85) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:183) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:162) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:157) ~[tomcat-embed-websocket-9.0.65.jar!/:na]
	at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:60) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:890) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-embed-core-9.0.65.jar!/:na]
	at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
@SeJonJ SeJonJ self-assigned this May 12, 2024
@SeJonJ SeJonJ added the bug Something isn't working label May 12, 2024
SeJonJ added a commit that referenced this issue May 12, 2024
#44 특정 상황에서 NPE 발생
@SeJonJ
Copy link
Owner Author

SeJonJ commented May 12, 2024

버그 수정 완료 서버 배포 후 테스트 진행 예정

@SeJonJ SeJonJ closed this as completed May 12, 2024
@SeJonJ SeJonJ added the fixed 해결 완료!! label May 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working fixed 해결 완료!!
Projects
None yet
Development

No branches or pull requests

1 participant