diff options
author | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-28 07:54:59 +0000 |
---|---|---|
committer | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2009-07-28 07:54:59 +0000 |
commit | fd9fb4a2951780511ba0925415efa48aca8f4b54 (patch) | |
tree | 07da5a8458499301b44b8afecb096f2c3b0666be /java/sca/modules/host-webapp | |
parent | cc0f2b66367070cb9c00d2df4d78292bea5a31fc (diff) |
Create a Tuscany specific listener manager so that the shutdown hook is cleared properly on runtime shutdown.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@798434 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/host-webapp')
2 files changed, 7 insertions, 0 deletions
diff --git a/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/TuscanyServletFilter.java b/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/TuscanyServletFilter.java index 359817e024..2a65aefc15 100644 --- a/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/TuscanyServletFilter.java +++ b/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/TuscanyServletFilter.java @@ -52,6 +52,7 @@ public class TuscanyServletFilter implements Filter { public void destroy() { ServletHostHelper.stop(context); + servletHost = null; } public void doFilter(ServletRequest request, ServletResponse response, javax.servlet.FilterChain chain) diff --git a/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java b/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java index d07b19bca9..356d14fb83 100644 --- a/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java +++ b/java/sca/modules/host-webapp/src/main/java/org/apache/tuscany/sca/host/webapp/WebAppModuleActivator.java @@ -46,6 +46,12 @@ public class WebAppModuleActivator implements ModuleActivator { } public void stop(ExtensionPointRegistry registry) { + // as we know we are running in a webapp remove all of the servlet + // hosts. There will just be one - see start method + ServletHostExtensionPoint servletHosts = + registry.getExtensionPoint(ServletHostExtensionPoint.class); + List<ServletHost> hosts = servletHosts.getServletHosts(); + hosts.clear(); } } |