/** * {@inheritDoc} */ @Override public void end(WebAppContext context, Descriptor descriptor) { context.getServletHandler().setFilters(_filterHolders.toArray(new FilterHolder[_filterHolderMap.size()])); context.getServletHandler().setServlets(_servletHolders.toArray(new ServletHolder[_servletHolderMap.size()])); context.getServletHandler().setFilterMappings(_filterMappings.toArray(new FilterMapping[_filterMappings.size()])); context.getServletHandler().setServletMappings(_servletMappings.toArray(new ServletMapping[_servletMappings.size()])); _filterHolderMap.clear(); _filterHolders.clear(); _filterMappings.clear(); _servletHolderMap.clear(); _servletHolders.clear(); _servletMappings.clear(); }
ArrayUtil.removeFromArray(servletMappings, servletMappings[i]); webAppContext.getServletHandler() .setServletMappings(newServletMappings); break;
ArrayUtil.removeFromArray(servletMappings, servletMappings[i]); webAppContext.getServletHandler() .setServletMappings(newServletMappings); break;
private void updateServlets() { if (handler != null) { final Holder[] snapshot = servlets.toArray(new Holder[0]); final ServletHolder[] holders = new ServletHolder[snapshot.length]; final ServletMapping[] mappings = new ServletMapping[snapshot.length]; for (int i = 0; i < snapshot.length; ++i) { holders[i] = snapshot[i].holder; mappings[i] = snapshot[i].mapping; } handler.setServlets(holders); handler.setServletMappings(mappings); } }
/** Convenience method to add a pre-constructed ServletMapping. * @param mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings((ServletMapping[])LazyList.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** * Convenience method to add a pre-constructed ServletMapping. * @param mapping the servlet mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings(ArrayUtil.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** Convenience method to add a pre-constructed ServletMapping. * @param mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings((ServletMapping[])LazyList.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** Convenience method to add a pre-constructed ServletMapping. * @param mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings(ArrayUtil.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** Convenience method to add a pre-constructed ServletMapping. * @param mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings((ServletMapping[])LazyList.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** * Convenience method to add a pre-constructed ServletMapping. * @param mapping the servlet mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings(ArrayUtil.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** Convenience method to add a pre-constructed ServletMapping. * @param mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings(ArrayUtil.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** Convenience method to add a pre-constructed ServletMapping. * @param mapping */ public void addServletMapping (ServletMapping mapping) { setServletMappings(ArrayUtil.addToArray(getServletMappings(), mapping, ServletMapping.class)); }
/** * {@inheritDoc} */ @Override public void end(WebAppContext context, Descriptor descriptor) { context.getServletHandler().setFilters(_filterHolders.toArray(new FilterHolder[_filterHolderMap.size()])); context.getServletHandler().setServlets(_servletHolders.toArray(new ServletHolder[_servletHolderMap.size()])); context.getServletHandler().setFilterMappings(_filterMappings.toArray(new FilterMapping[_filterMappings.size()])); context.getServletHandler().setServletMappings(_servletMappings.toArray(new ServletMapping[_servletMappings.size()])); _filterHolderMap.clear(); _filterHolders.clear(); _filterMappings.clear(); _servletHolderMap.clear(); _servletHolders.clear(); _servletMappings.clear(); }
public void addServlet(String pathSpec, ServletHolder servletHolder) { if (webappContext == null) { try { initServer(); } catch (Exception e) { throw new IllegalStateException(e); } } // Jetty 9.2 is sensitive to overlapping mappings, so remove it pathSpec already exists if (webappContext.getServletHandler().getServletMapping(pathSpec) != null) { final ServletMapping[] servletMappings = webappContext.getServletHandler().getServletMappings(); final String oldServletName = webappContext.getServletHandler().getServletMapping(pathSpec).getServletName(); ServletMapping oldServletMapping = null; for (ServletMapping servletMapping : servletMappings) { if (servletMapping.getServletName().equals(oldServletName)) { oldServletMapping = servletMapping; break; } } final ServletMapping[] servletMappingsOldRemoved = ArrayUtil.removeFromArray(servletMappings, oldServletMapping); webappContext.getServletHandler().setServletMappings(servletMappingsOldRemoved); } webappContext.getServletHandler().addServletWithMapping(servletHolder, pathSpec); }
public void addServlet(String pathSpec, ServletHolder servletHolder) { if (webappContext == null) { try { initServer(); } catch (Exception e) { throw new IllegalStateException(e); } } // Jetty 9.2 is sensitive to overlapping mappings, so remove it pathSpec already exists if (webappContext.getServletHandler().getServletMapping(pathSpec) != null) { final ServletMapping[] servletMappings = webappContext.getServletHandler().getServletMappings(); final String oldServletName = webappContext.getServletHandler().getServletMapping(pathSpec).getServletName(); ServletMapping oldServletMapping = null; for (ServletMapping servletMapping : servletMappings) { if (servletMapping.getServletName().equals(oldServletName)) { oldServletMapping = servletMapping; break; } } final ServletMapping[] servletMappingsOldRemoved = ArrayUtil.removeFromArray(servletMappings, oldServletMapping); webappContext.getServletHandler().setServletMappings(servletMappingsOldRemoved); } webappContext.getServletHandler().addServletWithMapping(servletHolder, pathSpec); }
/** conveniance method to add a servlet. * @param servlet servlet holder to add * @param pathSpec servlet mappings for the servletHolder */ public void addServletWithMapping (ServletHolder servlet,String pathSpec) { ServletHolder[] holders=getServlets(); if (holders!=null) holders = holders.clone(); try { setServlets((ServletHolder[])LazyList.addToArray(holders, servlet, ServletHolder.class)); ServletMapping mapping = new ServletMapping(); mapping.setServletName(servlet.getName()); mapping.setPathSpec(pathSpec); setServletMappings((ServletMapping[])LazyList.addToArray(getServletMappings(), mapping, ServletMapping.class)); } catch (Exception e) { setServlets(holders); if (e instanceof RuntimeException) throw (RuntimeException)e; throw new RuntimeException(e); } }
/** conveniance method to add a servlet. * @param servlet servlet holder to add * @param pathSpec servlet mappings for the servletHolder */ public void addServletWithMapping (ServletHolder servlet,String pathSpec) { ServletHolder[] holders=getServlets(); if (holders!=null) holders = holders.clone(); try { setServlets((ServletHolder[])LazyList.addToArray(holders, servlet, ServletHolder.class)); ServletMapping mapping = new ServletMapping(); mapping.setServletName(servlet.getName()); mapping.setPathSpec(pathSpec); setServletMappings((ServletMapping[])LazyList.addToArray(getServletMappings(), mapping, ServletMapping.class)); } catch (Exception e) { setServlets(holders); if (e instanceof RuntimeException) throw (RuntimeException)e; throw new RuntimeException(e); } }
@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 } }
/** conveniance method to add a servlet. * @param servlet servlet holder to add * @param pathSpec servlet mappings for the servletHolder */ public void addServletWithMapping (ServletHolder servlet,String pathSpec) { ServletHolder[] holders=getServlets(); if (holders!=null) holders = holders.clone(); try { setServlets(ArrayUtil.addToArray(holders, servlet, ServletHolder.class)); ServletMapping mapping = new ServletMapping(); mapping.setServletName(servlet.getName()); mapping.setPathSpec(pathSpec); setServletMappings(ArrayUtil.addToArray(getServletMappings(), mapping, ServletMapping.class)); } catch (Exception e) { setServlets(holders); if (e instanceof RuntimeException) throw (RuntimeException)e; throw new RuntimeException(e); } }