응용 프로그램이 종료되면 정리 작업을 수행해야하는 JAX-RS 응용 프로그램을 실행하고 있습니다. 이 목적을 위해 종료 후크를 설치했는데 정상적으로 작동합니다. 그러나 단위 테스트에서 JVM이 두 번의 호출 사이에서 종료되지 않기 때문에 (물론) 셧다운 훅이 트리거되지 않습니다. 이 문제를 해결하고 최후의 수단으로 셧다운 훅을 사용하고 싶습니다. 상상해보십시오. 명시 적으로 종료를 트리거하지 않고 서블릿 컨테이너에서 응용 프로그램을 배포 취소하는 경우에도 마찬가지입니다. 또한 응용 프로그램 컨테이너가 계속 종료 되어도 응용 프로그램 컨테이너가 계속 실행되는 경우 메모리 누수가 발생할 수 있다고 생각합니까?JAX-RS 배포 해제를 청취하는 방법
질문 : : 내 JAX-RS 응용 프로그램을 담당하는 서버/서블릿을 폐기 할 수 있습니까? 나는 Servlet#destroy
메서드와 같은 것을 생각하고있었습니다.
new ResourceConfig().register(new MyShutDownListener())
또는 내가 할 수있는 일이 ShutDownBinder
입니까? 어떤 아이디어?
'ServletContextListener.contextDestroyed()'메소드가 당신의 케이스에 적합하지 않습니까? –
'GrizzlyHttpServerFactory' (https://jersey.java.net/apidocs/latest/jersey/org/glassfish/jersey/grizzly2/httpserver/GrizzlyHttpServerFactory.html)에 의해 임베디드 된 응용 프로그램을 시작할 것입니다. 나는 그 일에 매달릴 길을 찾지 못했습니다. –