Websites on Tomcat: how to shut down the server?

How can I intercept the close event of an endpoint running on the server (like methods for destroying servlets, so to speak) for logging or other purposes?

+3


source to share


1 answer


Spring 4 Java Configuration:

Implement SmartLifecycle (when using Java based configuration or Java to XML translation):

@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) {
        //
    }
}

      



See http://docs.spring.io/spring/docs/3.1.x/spring-framework-reference/htmlsingle/spring-framework-reference.html point 4.6 Bean character setting, for example:

<bean id="lifecycleProcessor" class="org.springframework.context.support.DefaultLifecycleProcessor">
  <!-- timeout value in milliseconds -->
  <property name="timeoutPerShutdownPhase" value="10000"/>
</bean>

      

0


source







All Articles