javax.servlet.Servlet#destroy ( )源码实例Demo

下面列出了javax.servlet.Servlet#destroy ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
 * Destruction servlet
 */
protected void destroyServlet(){
    Map<String, ServletRegistration> servletRegistrationMap = servletContext.getServletRegistrations();
    for(ServletRegistration registration : servletRegistrationMap.values()){
        Servlet servlet = registration.getServlet();
        if(servlet == null) {
            continue;
        }
        if(registration.isInitServlet()){
            try {
                servlet.destroy();
            }catch (Exception e){
                logger.error("destroyServlet error={},servlet={}",e.toString(),servlet,e);
            }
        }
    }
}
 
源代码2 项目: quarkus-http   文件: ManagedServlet.java
@Override
public InstanceHandle<? extends Servlet> getServlet() throws ServletException {
    final InstanceHandle<? extends Servlet> instanceHandle;
    final Servlet instance;
    //TODO: pooling
    try {
        instanceHandle = factory.createInstance();
    } catch (Exception e) {
        throw UndertowServletMessages.MESSAGES.couldNotInstantiateComponent(servletInfo.getName(), e);
    }
    instance = instanceHandle.getInstance();
    new LifecyleInterceptorInvocation(servletContext.getDeployment().getDeploymentInfo().getLifecycleInterceptors(), servletInfo, instance, new ServletConfigImpl(servletInfo, servletContext)).proceed();

    return new InstanceHandle<Servlet>() {
        @Override
        public Servlet getInstance() {
            return instance;
        }

        @Override
        public void release() {
            try {
                instance.destroy();
            } catch (Throwable t) {
                UndertowServletLogger.REQUEST_LOGGER.failedToDestroy(instance, t);
            }
            instanceHandle.release();
        }
    };

}
 
源代码3 项目: lams   文件: ManagedServlet.java
@Override
public InstanceHandle<? extends Servlet> getServlet() throws ServletException {
    final InstanceHandle<? extends Servlet> instanceHandle;
    final Servlet instance;
    //TODO: pooling
    try {
        instanceHandle = factory.createInstance();
    } catch (Exception e) {
        throw UndertowServletMessages.MESSAGES.couldNotInstantiateComponent(servletInfo.getName(), e);
    }
    instance = instanceHandle.getInstance();
    new LifecyleInterceptorInvocation(servletContext.getDeployment().getDeploymentInfo().getLifecycleInterceptors(), servletInfo, instance, new ServletConfigImpl(servletInfo, servletContext)).proceed();

    return new InstanceHandle<Servlet>() {
        @Override
        public Servlet getInstance() {
            return instance;
        }

        @Override
        public void release() {
            try {
                instance.destroy();
            } catch (Throwable t) {
                UndertowServletLogger.REQUEST_LOGGER.failedToDestroy(instance, t);
            }
            instanceHandle.release();
        }
    };

}
 
源代码4 项目: rdf4j   文件: WorkbenchServlet.java
@Override
public void destroy() {
	for (Servlet servlet : repositories.values()) {
		servlet.destroy();
	}
	manager.shutDown();
}
 
源代码5 项目: knopflerfish.org   文件: ServletRegistration.java
public void destroy()
{
  final Servlet servlet = dispatcher.getServlet();
  final ServletConfig cfg = servlet.getServletConfig();
  final ServletContext context = cfg != null ? cfg.getServletContext() : null;
  servlet.destroy();
  if (context != null) {
    contextManager.ungetServletContext(context);
  }
  registrations.removeServlet(servlet);
}
 
源代码6 项目: lemon   文件: ServletFilter.java
public void destroy() {
    for (Map.Entry<UrlPatternMatcher, Servlet> entry : servletMap
            .entrySet()) {
        Servlet servlet = entry.getValue();
        servlet.destroy();
    }
}
 
源代码7 项目: tomee   文件: HttpUtil.java
public static void removeServlet(final String mapping, final WebContext wc) {
    final HttpListenerRegistry registry = SystemInstance.get().getComponent(HttpListenerRegistry.class);
    if (registry == null || mapping == null) {
        return;
    }

    final Servlet servlet = ((ServletListener) registry.removeHttpListener(pattern(wc.getContextRoot(), mapping))).getDelegate();
    servlet.destroy();
    wc.destroy(servlet);
    if (servlet.getClass().equals("org.apache.jasper.servlet.JspServlet")) {
        SystemInstance.get().getComponent(ServletContext.class).removeAttribute("org.apache.tomcat.InstanceManager");
    }
}