@Override public void start() { LOG.info("Starting Kaa Admin Web Server..."); server = new Server(adminPort); webAppContext = new WebAppContext(); webAppContext.setEventListeners(new EventListener[]{adminContextLoaderListener}); webAppContext.setContextPath("/"); String webXmlLocation = AdminInitializationService.class.getResource("/admin-web/WEB-INF/" + webXmlFile).toString(); webAppContext.setDescriptor(webXmlLocation); String resLocation = AdminInitializationService.class.getResource("/admin-web").toString(); webAppContext.setResourceBase(resLocation); webAppContext.setParentLoaderPriority(true); server.setHandler(webAppContext); try { server.start(); LOG.info("Kaa Admin Web Server started."); } catch (Exception ex) { LOG.error("Error starting Kaa Admin Web Server!", ex); } }
@Override protected void doStart() { context.setEventListeners(null); } }
@Override protected void doStart() { context.setEventListeners(null); } }
@Override protected void doStart() throws Exception { context.setEventListeners(null); } }
@Override public void setEventListeners(EventListener[] eventListeners) { // Our listener will have to be at the end of the list // so that the real Spring context listener gets to execute first. LinkedList<EventListener> reorderedEventListeners = new LinkedList<EventListener>(); if (eventListeners != null) { Collections.addAll(reorderedEventListeners, eventListeners); } int pos = reorderedEventListeners.indexOf(myContextLoaderListener); if (pos < 0) { // not inserted yet reorderedEventListeners.addLast(myContextLoaderListener); } else if (pos < reorderedEventListeners.size() - 1) { // the listener is not at the bottom, need to shift it reorderedEventListeners.remove(pos); reorderedEventListeners.addLast(myContextLoaderListener); } super.setEventListeners(reorderedEventListeners.toArray(new EventListener[reorderedEventListeners.size()])); } };
@Override public void deconfigure (WebAppContext context) throws Exception { // TODO preserve any configuration that pre-existed. ServletHandler _servletHandler = context.getServletHandler(); _servletHandler.setFilters(null); _servletHandler.setFilterMappings(null); _servletHandler.setServlets(null); _servletHandler.setServletMappings(null); context.setEventListeners(null); context.setWelcomeFiles(null); if (context.getErrorHandler() instanceof ErrorPageErrorHandler) ((ErrorPageErrorHandler) context.getErrorHandler()).setErrorPages(null); // TODO remove classpaths from classloader } }
@Override public void deconfigure (WebAppContext context) throws Exception { // TODO preserve any configuration that pre-existed. ServletHandler _servletHandler = context.getServletHandler(); _servletHandler.setFilters(null); _servletHandler.setFilterMappings(null); _servletHandler.setServlets(null); _servletHandler.setServletMappings(null); context.setEventListeners(null); context.setWelcomeFiles(null); if (context.getErrorHandler() instanceof ErrorPageErrorHandler) ((ErrorPageErrorHandler) context.getErrorHandler()).setErrorPages(null); // TODO remove classpaths from classloader } }