Java Code Examples for javax.servlet.ServletContext#getContextPath()
The following examples show how to use
javax.servlet.ServletContext#getContextPath() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: SpringContextService.java From lutece-core with BSD 3-Clause "New" or "Revised" License | 6 votes |
/** * Returns a name for this context * * @param servletContext the servlet context * @return name for this context */ private static String getContextName( ServletContext servletContext ) { String name = "lutece"; if ( servletContext != null ) { String contextName = servletContext.getServletContextName( ); if ( contextName == null ) { contextName = servletContext.getContextPath( ); } if ( StringUtils.isNotBlank( contextName ) ) { name = contextName; } } return name; }
Example 2
Source File: TestRequestDispatcher.java From joynr with Apache License 2.0 | 6 votes |
private void forwardToUrl(final String targetContextPath, Request baseRequest, HttpServletResponse response) throws ServletException, IOException { logger.info("Forward request {} to context {}", baseRequest.toString(), targetContextPath); synchronized (contextForwardCounts) { int currentContextForwardCount = 0; if (contextForwardCounts.containsKey(targetContextPath)) { currentContextForwardCount = contextForwardCounts.get(targetContextPath); } contextForwardCounts.put(targetContextPath, currentContextForwardCount + 1); } ServletContext currentContext = baseRequest.getServletContext(); String currentContextPath = currentContext.getContextPath(); String forwardContextPath = currentContextPath.replace(ClusteredBounceProxyWithDispatcher.CONTEXT_DISPATCHER, targetContextPath); ServletContext forwardContext = currentContext.getContext(forwardContextPath); String forwardPath = baseRequest.getPathInfo(); RequestDispatcher requestDispatcher = forwardContext.getRequestDispatcher(forwardPath); requestDispatcher.forward(baseRequest, response); }
Example 3
Source File: TempDirInitializer.java From piranha with BSD 3-Clause "New" or "Revised" License | 6 votes |
/** * On startup. * * @param classes the classes. * @param servletContext the servlet context. * @throws ServletException when a servlet error occurs. */ @Override public void onStartup(Set<Class<?>> classes, ServletContext servletContext) throws ServletException { File baseDir = new File("tmp"); String name = servletContext.getContextPath(); name = name.replaceAll("/", "_"); if (name.trim().equals("")) { name = "ROOT"; } File tempDir = new File(baseDir, name); if (!tempDir.exists()) { tempDir.mkdirs(); } if (LOGGER.isLoggable(FINE)) { LOGGER.log(FINE, "Setting TEMPDIR for context ''{0}'' to ''{1}''", new Object[]{servletContext.getContextPath(), tempDir}); } servletContext.setAttribute(TEMPDIR, tempDir); }
Example 4
Source File: Context.java From o2oa with GNU Affero General Public License v3.0 | 6 votes |
public static Context concrete(ServletContextEvent servletContextEvent) throws Exception { ServletContext servletContext = servletContextEvent.getServletContext(); Context context = new Context(); context.contextPath = servletContext.getContextPath(); context.clazz = Class.forName(servletContext.getInitParameter(INITPARAMETER_PORJECT)); context.module = context.clazz.getAnnotation(Module.class); context.name = context.module.name(); context.path = servletContext.getRealPath(""); context.servletContext = servletContext; context.servletContextName = servletContext.getServletContextName(); context.clazz = Class.forName(servletContextEvent.getServletContext().getInitParameter(INITPARAMETER_PORJECT)); context.initDatas(); try (EntityManagerContainer emc = EntityManagerContainerFactory.instance().create()) { // context.cleanupSchedule(emc); // context.cleanupScheduleLocal(emc); context.checkDefaultRole(emc); } servletContext.setAttribute(context.getClass().getName(), context); return context; }
Example 5
Source File: AuthenticatorBase.java From Tomcat8-Source-Read with MIT License | 5 votes |
/** * Start this component and implement the requirements of * {@link org.apache.catalina.util.LifecycleBase#startInternal()}. * * @exception LifecycleException * if this component detects a fatal error that prevents this * component from being used */ @Override protected synchronized void startInternal() throws LifecycleException { ServletContext servletContext = context.getServletContext(); jaspicAppContextID = servletContext.getVirtualServerName() + " " + servletContext.getContextPath(); // Look up the SingleSignOn implementation in our request processing // path, if there is one Container parent = context.getParent(); while ((sso == null) && (parent != null)) { Valve valves[] = parent.getPipeline().getValves(); for (int i = 0; i < valves.length; i++) { if (valves[i] instanceof SingleSignOn) { sso = (SingleSignOn) valves[i]; break; } } if (sso == null) { parent = parent.getParent(); } } if (log.isDebugEnabled()) { if (sso != null) { log.debug("Found SingleSignOn Valve at " + sso); } else { log.debug("No SingleSignOn Valve is present"); } } sessionIdGenerator = new StandardSessionIdGenerator(); sessionIdGenerator.setSecureRandomAlgorithm(getSecureRandomAlgorithm()); sessionIdGenerator.setSecureRandomClass(getSecureRandomClass()); sessionIdGenerator.setSecureRandomProvider(getSecureRandomProvider()); super.startInternal(); }
Example 6
Source File: PwaConfiguration.java From flow with Apache License 2.0 | 5 votes |
protected PwaConfiguration(PWA pwa, ServletContext servletContext) { rootUrl = hasContextPath(servletContext) ? servletContext.getContextPath() + "/" : "/"; if (pwa != null) { appName = pwa.name(); shortName = pwa.shortName().substring(0, Math.min(pwa.shortName().length(), 12)); description = pwa.description(); backgroundColor = pwa.backgroundColor(); themeColor = pwa.themeColor(); iconPath = checkPath(pwa.iconPath()); manifestPath = checkPath(pwa.manifestPath()); offlinePath = checkPath(pwa.offlinePath()); display = pwa.display(); startPath = pwa.startPath().replaceAll("^/+", ""); enabled = true; offlineResources = Arrays.asList(pwa.offlineResources()); } else { appName = DEFAULT_NAME; shortName = "Flow PWA"; description = ""; backgroundColor = DEFAULT_BACKGROUND_COLOR; themeColor = DEFAULT_THEME_COLOR; iconPath = DEFAULT_ICON; manifestPath = DEFAULT_PATH; offlinePath = DEFAULT_OFFLINE_PATH; display = DEFAULT_DISPLAY; startPath = ""; enabled = false; offlineResources = Collections.emptyList(); } }
Example 7
Source File: ServletHttpForwardRequest.java From spring-boot-protocol with Apache License 2.0 | 5 votes |
/** * Parsing path */ private void decodePaths(){ ServletContext servletContext = getServletContext(); String contextPath = servletContext.getContextPath(); boolean existContextPath = contextPath != null && contextPath.length() > 0; String sourceURI = forwardPath; if (sourceURI.indexOf('\\') > -1) { sourceURI = sourceURI.replace('\\', '/'); } String servletPath = existContextPath? sourceURI.replace(contextPath, "") : sourceURI; if (servletPath.isEmpty() || servletPath.charAt(0)!= '/') { servletPath = '/' + servletPath; } //Parsing the queryString int queryInx = servletPath.indexOf('?'); if (queryInx > -1) { this.queryString = servletPath.substring(queryInx + 1, servletPath.length()); servletPath = servletPath.substring(0, queryInx); } //Parse the requestURI and ensure that the requestURI prefix is + / String requestURI; if(existContextPath){ requestURI = '/' + contextPath + servletPath; }else { requestURI = servletPath; } this.servletPath = servletPath; this.requestURI = requestURI; // 1.Plus the pathInfo this.pathInfo = null; this.decodePathsFlag = true; }
Example 8
Source File: AuthenticationInitializer.java From piranha with BSD 3-Clause "New" or "Revised" License | 5 votes |
/** * Initialize Eleos * * @param classes the classes. * @param servletContext the Servlet context. * @throws ServletException when a Servlet error occurs. */ @Override public void onStartup(Set<Class<?>> classes, ServletContext servletContext) throws ServletException { // Gets the authentication module class that was configured externally Class<?> authModuleClass = (Class<?>) servletContext.getAttribute(AUTH_MODULE_CLASS); if (authModuleClass == null) { authModuleClass = DoNothingServerAuthModule.class; } String appContextId = servletContext.getVirtualServerName() + " " + servletContext.getContextPath(); // This sets the authentication factory to the default factory. This factory stores and retrieves // the authentication artifacts. Security.setProperty(DEFAULT_FACTORY_SECURITY_PROPERTY, DefaultConfigFactory.class.getName()); // Defines the modules that we have available. Here it's only a single fixed module. ConfigParser configParser = new DefaultConfigParser(authModuleClass); // Indicates the module we want to use Map<String, Object> options = new HashMap<>(); options.put("authModuleId", authModuleClass.getSimpleName()); // This authentication service installs an authentication config provider in the default factory, which // is the one we setup above. This authentication config provider uses the passed-in configParser to // retrieve configuration for authentication modules from. DefaultAuthenticationService authenticationService = new DefaultAuthenticationService(appContextId, options, configParser, null); servletContext.setAttribute(AUTH_SERVICE, authenticationService); servletContext.addFilter(AuthenticationFilter.class.getSimpleName(), AuthenticationFilter.class); // TMP - should use Dynamic ((WebApplication) servletContext).addFilterMapping(AuthenticationFilter.class.getSimpleName(), "/*"); }
Example 9
Source File: CsrfGuardServletContextListener.java From lams with GNU General Public License v2.0 | 5 votes |
@Override public void contextInitialized(ServletContextEvent event) { ServletContext context = event.getServletContext(); servletContext = context.getContextPath(); //since this is just a prefix of a path, then if there is no servlet context, it is the empty string if (servletContext == null || "/".equals(servletContext)) { servletContext = ""; } configFileName = context.getInitParameter(CONFIG_PARAM); if (configFileName == null) { configFileName = ConfigurationOverlayProvider.OWASP_CSRF_GUARD_PROPERTIES; } InputStream is = null; Properties properties = new Properties(); try { is = getResourceStream(configFileName, context, false); if (is == null) { is = getResourceStream(ConfigurationOverlayProvider.META_INF_CSRFGUARD_PROPERTIES, context, false); } if (is == null) { throw new RuntimeException("Cant find default owasp csrfguard properties file: " + configFileName); } properties.load(is); CsrfGuard.load(properties); } catch (Exception e) { throw new RuntimeException(e); } finally { Streams.close(is); } printConfigIfConfigured(context, "Printing properties before Javascript servlet, note, the javascript properties might not be initialized yet: "); }
Example 10
Source File: PwaConfiguration.java From flow with Apache License 2.0 | 4 votes |
private static boolean hasContextPath(ServletContext servletContext) { return !(servletContext == null || servletContext.getContextPath() == null || servletContext.getContextPath().isEmpty()); }
Example 11
Source File: CustomServletContextListener.java From eplmp with Eclipse Public License 1.0 | 4 votes |
public static String getAppContextID(ServletContext context) { return context.getVirtualServerName() + " " + context.getContextPath(); }
Example 12
Source File: RestProtocol.java From dubbox with Apache License 2.0 | 4 votes |
protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = url.getIp() + ":" + url.getPort(); Class implClass = ServiceClassHolder.getInstance().popServiceClass(); RestServer server = servers.get(addr); if (server == null) { server = serverFactory.createServer(url.getParameter(Constants.SERVER_KEY, "jetty")); server.start(url); servers.put(addr, server); } String contextPath = getContextPath(url); if ("servlet".equalsIgnoreCase(url.getParameter(Constants.SERVER_KEY, "jetty"))) { ServletContext servletContext = ServletManager.getInstance().getServletContext(ServletManager.EXTERNAL_SERVER_PORT); if (servletContext == null) { throw new RpcException("No servlet context found. Since you are using server='servlet', " + "make sure that you've configured " + BootstrapListener.class.getName() + " in web.xml"); } String webappPath = servletContext.getContextPath(); if (StringUtils.isNotEmpty(webappPath)) { webappPath = webappPath.substring(1); if (!contextPath.startsWith(webappPath)) { throw new RpcException("Since you are using server='servlet', " + "make sure that the 'contextpath' property starts with the path of external webapp"); } contextPath = contextPath.substring(webappPath.length()); if (contextPath.startsWith("/")) { contextPath = contextPath.substring(1); } } } final Class resourceDef = GetRestful.getRootResourceClass(implClass) != null ? implClass : type; server.deploy(resourceDef, impl, contextPath); final RestServer s = server; return new Runnable() { public void run() { // TODO due to dubbo's current architecture, // it will be called from registry protocol in the shutdown process and won't appear in logs s.undeploy(resourceDef); } }; }
Example 13
Source File: PwaRegistry.java From flow with Apache License 2.0 | 4 votes |
private String initializeServiceWorker(ServletContext servletContext) { StringBuilder stringBuilder = new StringBuilder(); // List of icons for precache List<String> filesToCahe = getIcons().stream() .filter(PwaIcon::shouldBeCached).map(PwaIcon::getCacheFormat) .collect(Collectors.toList()); // Add offline page to precache filesToCahe.add(offlinePageCache()); // Add manifest to precache filesToCahe.add(manifestCache()); // Add user defined resources for (String resource : pwaConfiguration.getOfflineResources()) { filesToCahe.add(String.format(WORKBOX_CACHE_FORMAT, resource.replaceAll("'", ""), servletContext.hashCode())); } String workBoxAbsolutePath = servletContext.getContextPath() + "/" + WORKBOX_FOLDER; // Google Workbox import stringBuilder.append("importScripts('").append(workBoxAbsolutePath) .append("workbox-sw.js").append("');\n\n"); stringBuilder.append("workbox.setConfig({\n") .append(" modulePathPrefix: '").append(workBoxAbsolutePath) .append("'\n").append("});\n"); // Precaching stringBuilder.append("workbox.precaching.precacheAndRoute([\n"); stringBuilder.append(String.join(",\n", filesToCahe)); stringBuilder.append("\n]);\n"); // Offline fallback stringBuilder .append("self.addEventListener('fetch', function(event) {\n") .append(" var request = event.request;\n") .append(" if (request.mode === 'navigate') {\n") .append(" event.respondWith(\n fetch(request)\n") .append(" .catch(function() {\n") .append(String.format(" return caches.match('%s');%n", getPwaConfiguration().getOfflinePath())) .append(" })\n );\n }\n });"); return stringBuilder.toString(); }
Example 14
Source File: ICEREST.java From ICERest with Apache License 2.0 | 4 votes |
public boolean init(Config config, ServletContext servletContext) { this.servletContext = servletContext; this.contextPath = servletContext.getContextPath(); iceIniter = new IceIniter(config, servletContext); return true; }
Example 15
Source File: ServletProcessApplicationDeployer.java From camunda-bpm-platform with Apache License 2.0 | 4 votes |
public void onStartup(Set<Class<?>> c, ServletContext ctx) throws ServletException { if(c == null || c.isEmpty()) { // skip deployments that do not carry a PA return; } if (c.contains(ProcessApplication.class)) { // this is a workaround for a bug in WebSphere-8.5 who // ships the annotation itself as part of the discovered classes. // copy into a fresh Set as we don't know if the original Set is mutable or immutable. c = new HashSet<Class<?>>(c); // and now remove the annotation itself. c.remove(ProcessApplication.class); } String contextPath = ctx.getContextPath(); if(c.size() > 1) { // a deployment must only contain a single PA throw LOG.multiplePasException(c, contextPath); } else if(c.size() == 1) { Class<?> paClass = c.iterator().next(); // validate whether it is a legal Process Application if(!AbstractProcessApplication.class.isAssignableFrom(paClass)) { throw LOG.paWrongTypeException(paClass); } // add it as listener if it's a ServletProcessApplication if(ServletProcessApplication.class.isAssignableFrom(paClass)) { LOG.detectedPa(paClass); ctx.addListener(paClass.getName()); } } else { LOG.servletDeployerNoPaFound(contextPath); } }
Example 16
Source File: RestProtocol.java From dubbox with Apache License 2.0 | 4 votes |
protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = url.getIp() + ":" + url.getPort(); Class implClass = ServiceClassHolder.getInstance().popServiceClass(); RestServer server = servers.get(addr); if (server == null) { server = serverFactory.createServer(url.getParameter(Constants.SERVER_KEY, "jetty")); server.start(url); servers.put(addr, server); } String contextPath = getContextPath(url); if ("servlet".equalsIgnoreCase(url.getParameter(Constants.SERVER_KEY, "jetty"))) { ServletContext servletContext = ServletManager.getInstance().getServletContext(ServletManager.EXTERNAL_SERVER_PORT); if (servletContext == null) { throw new RpcException("No servlet context found. Since you are using server='servlet', " + "make sure that you've configured " + BootstrapListener.class.getName() + " in web.xml"); } String webappPath = servletContext.getContextPath(); if (StringUtils.isNotEmpty(webappPath)) { webappPath = webappPath.substring(1); if (!contextPath.startsWith(webappPath)) { throw new RpcException("Since you are using server='servlet', " + "make sure that the 'contextpath' property starts with the path of external webapp"); } contextPath = contextPath.substring(webappPath.length()); if (contextPath.startsWith("/")) { contextPath = contextPath.substring(1); } } } final Class resourceDef = GetRestful.getRootResourceClass(implClass) != null ? implClass : type; server.deploy(resourceDef, impl, contextPath); final RestServer s = server; return new Runnable() { public void run() { // TODO due to dubbo's current architecture, // it will be called from registry protocol in the shutdown process and won't appear in logs s.undeploy(resourceDef); } }; }
Example 17
Source File: RestProtocol.java From dubbox with Apache License 2.0 | 4 votes |
protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = url.getIp() + ":" + url.getPort(); Class implClass = ServiceClassHolder.getInstance().popServiceClass(); RestServer server = servers.get(addr); if (server == null) { server = serverFactory.createServer(url.getParameter(Constants.SERVER_KEY, "jetty")); server.start(url); servers.put(addr, server); } String contextPath = getContextPath(url); if ("servlet".equalsIgnoreCase(url.getParameter(Constants.SERVER_KEY, "jetty"))) { ServletContext servletContext = ServletManager.getInstance().getServletContext(ServletManager.EXTERNAL_SERVER_PORT); if (servletContext == null) { throw new RpcException("No servlet context found. Since you are using server='servlet', " + "make sure that you've configured " + BootstrapListener.class.getName() + " in web.xml"); } String webappPath = servletContext.getContextPath(); if (StringUtils.isNotEmpty(webappPath)) { webappPath = webappPath.substring(1); if (!contextPath.startsWith(webappPath)) { throw new RpcException("Since you are using server='servlet', " + "make sure that the 'contextpath' property starts with the path of external webapp"); } contextPath = contextPath.substring(webappPath.length()); if (contextPath.startsWith("/")) { contextPath = contextPath.substring(1); } } } final Class resourceDef = GetRestful.getRootResourceClass(implClass) != null ? implClass : type; server.deploy(resourceDef, impl, contextPath); final RestServer s = server; return new Runnable() { public void run() { // TODO due to dubbo's current architecture, // it will be called from registry protocol in the shutdown process and won't appear in logs s.undeploy(resourceDef); } }; }
Example 18
Source File: IconController.java From es with Apache License 2.0 | 4 votes |
/** * 如果量大 建议 在页面设置按钮 然后点击生成 * * @param request * @return */ @RequestMapping(value = "/genCssFile") @ResponseBody public String genIconCssFile(HttpServletRequest request) { this.permissionList.assertHasEditPermission(); String uploadFileTemplate = ".%1$s{background:url(%2$s/%3$s);width:%4$spx;height:%5$spx;display:inline-block;vertical-align: middle;%6$s}"; String cssSpriteTemplate = ".%1$s{background:url(%2$s/%3$s) no-repeat -%4$spx -%5$spx;width:%6$spx;height:%7$spx;display:inline-block;vertical-align: middle;%8$s}"; ServletContext sc = request.getServletContext(); String ctx = sc.getContextPath(); List<String> cssList = Lists.newArrayList(); Searchable searchable = Searchable.newSearchable() .addSearchParam("type_in", new IconType[]{IconType.upload_file, IconType.css_sprite}); List<Icon> iconList = baseService.findAllWithNoPageNoSort(searchable); for (Icon icon : iconList) { if (icon.getType() == IconType.upload_file) { cssList.add(String.format( uploadFileTemplate, icon.getIdentity(), ctx, icon.getImgSrc(), icon.getWidth(), icon.getHeight(), icon.getStyle())); continue; } if (icon.getType() == IconType.css_sprite) { cssList.add(String.format( cssSpriteTemplate, icon.getIdentity(), ctx, icon.getSpriteSrc(), icon.getLeft(), icon.getTop(), icon.getWidth(), icon.getHeight(), icon.getStyle())); continue; } } try { ServletContextResource resource = new ServletContextResource(sc, iconClassFile); FileUtils.writeLines(resource.getFile(), cssList); } catch (Exception e) { LogUtils.logError("gen icon error", e); return "生成失败:" + e.getMessage(); } return "生成成功"; }
Example 19
Source File: WebAppInterceptor.java From pinpoint with Apache License 2.0 | 4 votes |
private String extractContextKey(ServletContext webapp) { String context = webapp.getContextPath(); return StringUtils.isEmpty(context) ? "/ROOT" : context; }
Example 20
Source File: RestProtocol.java From dubbo-2.6.5 with Apache License 2.0 | 4 votes |
@Override protected <T> Runnable doExport(T impl, Class<T> type, URL url) throws RpcException { String addr = getAddr(url); Class implClass = ServiceClassHolder.getInstance().popServiceClass(); RestServer server = servers.get(addr); if (server == null) { server = serverFactory.createServer(url.getParameter(Constants.SERVER_KEY, "jetty")); server.start(url); servers.put(addr, server); } String contextPath = getContextPath(url); if ("servlet".equalsIgnoreCase(url.getParameter(Constants.SERVER_KEY, "jetty"))) { ServletContext servletContext = ServletManager.getInstance().getServletContext(ServletManager.EXTERNAL_SERVER_PORT); if (servletContext == null) { throw new RpcException("No servlet context found. Since you are using server='servlet', " + "make sure that you've configured " + BootstrapListener.class.getName() + " in web.xml"); } String webappPath = servletContext.getContextPath(); if (StringUtils.isNotEmpty(webappPath)) { webappPath = webappPath.substring(1); if (!contextPath.startsWith(webappPath)) { throw new RpcException("Since you are using server='servlet', " + "make sure that the 'contextpath' property starts with the path of external webapp"); } contextPath = contextPath.substring(webappPath.length()); if (contextPath.startsWith("/")) { contextPath = contextPath.substring(1); } } } final Class resourceDef = GetRestful.getRootResourceClass(implClass) != null ? implClass : type; server.deploy(resourceDef, impl, contextPath); final RestServer s = server; return new Runnable() { @Override public void run() { // TODO due to dubbo's current architecture, // it will be called from registry protocol in the shutdown process and won't appear in logs s.undeploy(resourceDef); } }; }