Tomcat上的Websockets:如何彻底关闭服务器?

Fla*_*963 5 java tomcat websocket

我如何截获服务器上运行的用于日志记录或其他目的的端点的关闭事件(例如servlet的destroy方法)?

Dan*_*son -1

Spring 4 Java 配置:

实现 SmartLifecycle(当使用基于 Java 的配置时,或将 Java 代码转换为 XML):

@Configuration
public class CycleBean implements SmartLifecycle {

    public CycleBean() {
    }

    @Override
    public boolean isRunning() {
        return true;
    }

    @Override
    public void start() {
    }

    @Override
    public void stop() {
        //when stopped call 
    }

    @Override
    public int getPhase() {
        return 0;
    }

    @Override
    public boolean isAutoStartup() {
        return true;
    }

    @Override
    public void stop(Runnable arg0) {
        //
    }
}
Run Code Online (Sandbox Code Playgroud)

请参阅http://docs.spring.io/spring/docs/3.1.x/spring-framework-reference/htmlsingle/spring-framework-reference.html段落4.6自定义bean的性质,例如:

<bean id="lifecycleProcessor" class="org.springframework.context.support.DefaultLifecycleProcessor">
  <!-- timeout value in milliseconds -->
  <property name="timeoutPerShutdownPhase" value="10000"/>
</bean>
Run Code Online (Sandbox Code Playgroud)