private void configure(final ServletEnvironment environment, final HttpServlet servlet, final Class<? extends HttpServlet> type, final String name, final WebServlet annotation) { final ServletRegistration.Dynamic mapping = environment.addServlet(name, servlet); final Set<String> clash = mapping .addMapping(annotation.urlPatterns().length > 0 ? annotation.urlPatterns() : annotation.value()); if (clash != null && !clash.isEmpty()) { final String msg = String.format( "Servlet registration %s clash with already installed servlets on paths: %s", type.getSimpleName(), Joiner.on(',').join(clash)); if (option(DenyServletRegistrationWithClash)) { throw new IllegalStateException(msg); } else { logger.warn(msg); } } if (annotation.initParams().length > 0) { for (WebInitParam param : annotation.initParams()) { mapping.setInitParameter(param.name(), param.value()); } } mapping.setAsyncSupported(annotation.asyncSupported()); } }
public ServletAnnotationScanner(Class<?> clazz) { WebServlet annotation = (WebServlet) clazz.getAnnotation(WebServlet.class); if (annotation == null) { return; } scanned = true; multiPartConfigAnnotation = (MultipartConfig) clazz.getAnnotation(MultipartConfig.class); if (annotation.urlPatterns().length > 0 && annotation.value().length > 0) { log.warn(clazz.getName() + " defines both @WebServlet.value and @WebServlet.urlPatterns"); return; } urlPatterns = annotation.value(); if (urlPatterns.length == 0) { urlPatterns = annotation.urlPatterns(); } if (urlPatterns.length == 0) { log.warn(clazz.getName() + " defines neither @WebServlet.value nor @WebServlet.urlPatterns"); return; } servletName = (annotation.name().equals("") ? clazz .getName() : annotation.name()); webInitParams = annotation.initParams(); asyncSupported = annotation.asyncSupported(); loadOnStartup = annotation.loadOnStartup(); }
private void configure(final ServletEnvironment environment, final HttpServlet servlet, final Class<? extends HttpServlet> type, final String name, final WebServlet annotation) { final ServletRegistration.Dynamic mapping = environment.addServlet(name, servlet); final Set<String> clash = mapping .addMapping(annotation.urlPatterns().length > 0 ? annotation.urlPatterns() : annotation.value()); if (clash != null && !clash.isEmpty()) { final String msg = String.format( "Servlet registration %s clash with already installed servlets on paths: %s", type.getSimpleName(), Joiner.on(',').join(clash)); if (option(DenyServletRegistrationWithClash)) { throw new IllegalStateException(msg); } else { logger.warn(msg); } } if (annotation.initParams().length > 0) { for (WebInitParam param : annotation.initParams()) { mapping.setInitParameter(param.name(), param.value()); } } mapping.setAsyncSupported(annotation.asyncSupported()); } }
public ServletAnnotationScanner(Class<?> clazz) { WebServlet annotation = (WebServlet) clazz.getAnnotation(WebServlet.class); if (annotation == null) { return; } scanned = true; multiPartConfigAnnotation = (MultipartConfig) clazz.getAnnotation(MultipartConfig.class); if (annotation.urlPatterns().length > 0 && annotation.value().length > 0) { log.warn(clazz.getName() + " defines both @WebServlet.value and @WebServlet.urlPatterns"); return; } urlPatterns = annotation.value(); if (urlPatterns.length == 0) { urlPatterns = annotation.urlPatterns(); } if (urlPatterns.length == 0) { log.warn(clazz.getName() + " defines neither @WebServlet.value nor @WebServlet.urlPatterns"); return; } servletName = (annotation.name().equals("") ? clazz .getName() : annotation.name()); webInitParams = annotation.initParams(); asyncSupported = annotation.asyncSupported(); loadOnStartup = annotation.loadOnStartup(); }
for (WebInitParam param : annotation.initParams()) { params.put(param.name(), param.value());
@SuppressWarnings("unchecked") private List<ServletDefinition> detectServlets(Collection<Class<?>> servletClasses) { List<ServletDefinition> servletDefinitions = new ArrayList<>(); for (Class<?> candidate : servletClasses) { if (Servlet.class.isAssignableFrom(candidate)) { Class<? extends Servlet> servletClass = (Class<? extends Servlet>) candidate; WebServlet annotation = servletClass.getAnnotation(WebServlet.class); ServletDefinition servletDefinition = new ServletDefinition( Strings.isNullOrEmpty(annotation.name()) ? servletClass.getCanonicalName() : annotation.name(), servletClass ); servletDefinition.setAsyncSupported(annotation.asyncSupported()); if (annotation.value().length > 0) { servletDefinition.addMappings(annotation.value()); } if (annotation.urlPatterns().length > 0) { servletDefinition.addMappings(annotation.urlPatterns()); } servletDefinition.setLoadOnStartup(annotation.loadOnStartup()); servletDefinition.addInitParameters(convert(annotation.initParams())); servletDefinitions.add(servletDefinition); } } return servletDefinitions; }
private void procesServlets() { Consumer<Class<? extends HttpServlet>> c = servlet -> { WebServlet webServlet = ClassUtils.getAnnotation(servlet, WebServlet.class); if(webServlet != null) { ServletDescriptor servletDescriptor = new ServletDescriptor(webServlet.name(), webServlet.value(), mapUrls(webServlet.urlPatterns()), webServlet.loadOnStartup(), webServlet.initParams(),webServlet.asyncSupported(),servlet); webServer.addServlet(servletDescriptor); } }; extension.processServlets(c); }
private void procesServlets() { Consumer<Class<? extends HttpServlet>> c = servlet -> { WebServlet webServlet = ClassUtils.getAnnotation(servlet, WebServlet.class); if(webServlet != null) { ServletDescriptor servletDescriptor = new ServletDescriptor(webServlet.name(), webServlet.value(), mapUrls(webServlet.urlPatterns()), webServlet.loadOnStartup(), webServlet.initParams(),webServlet.asyncSupported(),servlet); webServer.addServlet(servletDescriptor); } }; extension.processServlets(c); }
servlet.setLoadOnStartupInt(webServlet.loadOnStartup()); servlet.setAsyncSupported(webServlet.asyncSupported()); if (webServlet.initParams() != null) for (WebInitParam webInitParam : webServlet.initParams())
public void loadAnnotation(WebServlet ws) { this.addMapping(ws.value()); this.addMapping(ws.urlPatterns()); this.setLoadOnStartup(ws.loadOnStartup()); this.setAsyncSupported(ws.asyncSupported()); for (WebInitParam initParam : ws.initParams()) { this.setInitParameter(initParam.name(), initParam.value()); } }
Servlet targetServlet = ServletMergeHandler.getServlet(servletName, mergeContext); for (WebInitParam webInitParam : webServlet.initParams()) { String paramName = webInitParam.name(); if (ServletInitParamMergeHandler.isServletInitParamConfigured(servletName, paramName, mergeContext)) { newServlet.setLoadOnStartup(webServlet.loadOnStartup()); for (WebInitParam webInitParam : webServlet.initParams()) { newServlet.getInitParam().add(WebFilterAnnotationMergeHandler.newParamValue(webInitParam));
WebInitParam[] initParams = webServletAn.initParams(); if (initParams != null && initParams.length > 0) { for (WebInitParam initParam : initParams) {
metaData.setOrigin(servletName+".servlet.async-supported",annotation,clazz); for (WebInitParam ip:annotation.initParams()) for (WebInitParam ip:annotation.initParams())
metaData.setOrigin(servletName+".servlet.async-supported"); for (WebInitParam ip:annotation.initParams()) for (WebInitParam ip:annotation.initParams())
metaData.setOrigin(servletName+".servlet.async-supported"); for (WebInitParam ip:annotation.initParams()) for (WebInitParam ip:annotation.initParams())
metaData.setOrigin(servletName+".servlet.async-supported"); for (WebInitParam ip:annotation.initParams()) for (WebInitParam ip:annotation.initParams())
public void create(WebServlet webServlet) { if (webServlet.value().length > 0 && webServlet.urlPatterns().length == 0) { for (String url : webServlet.value()) { addURLPattern(url); // XXX: support addURLRegexp? } } else if (webServlet.urlPatterns().length > 0 && webServlet.value().length == 0) { for (String url : webServlet.urlPatterns()) { addURLPattern(url); // XXX: support addURLRegexp? } } else { throw new ConfigException(L.l("Annotation @WebServlet at '{0}' must specify either value or urlPatterns", getServletClassName())); } for (WebInitParam initParam : webServlet.initParams()) { setInitParam(initParam.name(), initParam.value()); //omit description } setLoadOnStartup(webServlet.loadOnStartup()); setAsyncSupported(webServlet.asyncSupported()); }
servletInfo.addMappings(webServlet.urlPatterns()); for (WebInitParam webInitParam : webServlet.initParams()) servletInfo.addInitParam(webInitParam.name(), webInitParam.value());