Java Tomcat上的WebSocket:如何干净地关闭服务器?
我如何拦截服务器上运行的端点的关闭事件(比如servlet的destroy方法)以用于日志记录或其他目的?Spring4Java配置: 实施SmartLifecycle(使用基于Java的配置或将Java代码转换为XML时): 请参见第4.6段自定义bean的性质,如:Java Tomcat上的WebSocket:如何干净地关闭服务器?,java,tomcat,websocket,Java,Tomcat,Websocket,我如何拦截服务器上运行的端点的关闭事件(比如servlet的destroy方法)以用于日志记录或其他目的?Spring4Java配置: 实施SmartLifecycle(使用基于Java的配置或将Java代码转换为XML时): 请参见第4.6段自定义bean的性质,如: <bean id="lifecycleProcessor" class="org.springframework.context.support.DefaultLifecycleProcessor"> <!
<bean id="lifecycleProcessor" class="org.springframework.context.support.DefaultLifecycleProcessor">
<!-- timeout value in milliseconds -->
<property name="timeoutPerShutdownPhase" value="10000"/>
</bean>
感谢您的快速回复。然而,我的上下文没有spring框架,只有一个在Tomcat webapp中运行的端点。糟糕的是,我从来没有听说过端点
,所以没有将其视为一个环境。顺便说一句,我拼错了:我应该编写端点
,但是。。。我要说重写onClose(会话会话,EndpointConfig配置)
方法。首先(如果可能)调用super.onClose(session,closeReason)
,然后调用用于记录的方法谢谢Danielson。但是,方法onClose(Session Session,CloseReason)
针对每个关闭的会话触发,而不是在端点实例关闭时触发。我找不到方法onClose(会话会话,EndpointConfig配置)
来覆盖。。。它应该属于哪一类?你找到答案了吗?
<bean id="lifecycleProcessor" class="org.springframework.context.support.DefaultLifecycleProcessor">
<!-- timeout value in milliseconds -->
<property name="timeoutPerShutdownPhase" value="10000"/>
</bean>