public HstContainerURL parseURL(HttpServletRequest request, ResolvedSiteMount mount, String requestPath) { HstContainerURLImpl url = new HstContainerURLImpl(); url.setContextPath(request.getContextPath()); url.setHostName(mount.getResolvedVirtualHost().getResolvedHostName()); url.setPortNumber(mount.getResolvedVirtualHost().getPortNumber()); url.setResolvedMountPath(mount.getResolvedMountPath()); url.setRequestPath(requestPath); url.setPathInfo(requestPath.substring(mount.getResolvedMountPath().length())); String characterEncoding = request.getCharacterEncoding(); if (characterEncoding == null) { characterEncoding = "ISO-8859-1"; } url.setCharacterEncoding(characterEncoding); return url; }
/** * @param resolvedSiteMapItem * @return the HstURLFactory */ public HstURLFactory getURLFactory(ResolvedSiteMapItem resolvedSiteMapItem) { HstURLFactory factory = resolvedSiteMapItem.getResolvedSiteMount().getResolvedVirtualHost().getVirtualHost().getVirtualHosts().getVirtualHostsManager().getUrlFactory(); return factory; } }
log.warn("Did not find a matching sitemap item for path '{}', SiteMount '{}' and Host '"+resolvedSiteMount.getResolvedVirtualHost().getResolvedHostName()+"'" + ". Return null", pathInfo, resolvedSiteMount.getSiteMount().getParent() == null ? "hst:root" : resolvedSiteMount.getSiteMount().getMountPath() ); throw new NotFoundException("PathInfo '"+pathInfo+"' could not be matched");
ResolvedVirtualHost rvh = requestContext.getResolvedSiteMapItem().getResolvedSiteMount().getResolvedVirtualHost(); String targetContextPath = requestContext.isEmbeddedRequest() ? requestContext.getEmbeddingContextPath() : baseURL.getContextPath(); ResolvedSiteMount mount = rvh.matchSiteMount(targetContextPath, location);