public void contextDestroyed(ServletContextEvent event) { WebletContainerImpl container = (WebletContainerImpl) WebletContainerImpl.getInstance(); if (container != null) container.destroy(); }
public String getMimeType(String resourcePath) { if (resourcePath != null) { String extension = StringUtils.getExtension(resourcePath); if (extension.length() < resourcePath.length()) { String retVal = (String) _mimeMappings.get(extension); /*no local mimetype we try the servlet context mime type*/ if (retVal == null) { /** * we check for the underlying container mimetype if we dont have a valid one * set via our overrides */ retVal = _container.getContainerMimeType(resourcePath); } return retVal; } } return null; }
String contextPath = container.getWebletContextPath(); Map weblets = container.getRegisteredWeblets(); if (StringUtils.isBlank(contextPath)) contextPath = "/"; if (accessPath.matches(URLREGEXP) && accessPath.indexOf(contextPath) == -1) return null; String[] parsed = container.parseWebletRequest(contextPath, accessPath, -1l); String webletPath = parsed[1]; Weblet weblet = container.getWeblet(webletName); if (weblet == null) return null;
public String getURL(String weblet, String pathInfo) { /* lets be more tolerant regarding paths */ if (pathInfo == null || pathInfo.trim().equals("")) pathInfo = "/"; WebletContainerImpl container = (WebletContainerImpl) WebletContainer.getInstance(); if (container == null) { initError(); return WEBLETS_NOT_INITIALIZED; } return container.getWebletContextPath() + container.getResourceUri(weblet, pathInfo); }
Matcher matcher = null; try { matcher = container.getPattern().matcher(pathInfo); } catch (NullPointerException ex) { Log log = LogFactory.getLog(this.getClass()); String[] parsed = container.parseWebletRequest(contextPath, requestURI, ifModifiedSince); if (parsed != null) { ServletContext servletContext = (ServletContext) external.getContext(); String contentTypeDefault = servletContext.getMimeType(contentName); WebletResponse webResponse = new WebletResponseImpl(contentTypeDefault, httpResponse); container.service(webRequest, webResponse); context.responseComplete();
_webletURLPattern = webletURLPattern; _webletContextPath = webletContextPath; checkWebletsContextPath(); try { Set configs = new HashSet(); while (urlIterator.hasNext()) { URL resource = (URL) urlIterator.next(); registerConfig(resource);
String webletsPattern = triggerPattern.replaceAll("\\.", "\\\\.").replaceAll("\\*", "weblets(/.*)"); MessageFormat format = new MessageFormat(formatPattern); WebletContainerImpl container = new WebletContainerImpl(context, contextPath, format, Pattern.compile(webletsPattern), multipleConfigs); // TODO we have to add the multiple configs here as well if needed try { while (urlIterator.hasNext()) { URL resource = (URL) urlIterator.next(); container.registerConfig(resource); container.registerConfig(resource); resource = context.getResource("/META-INF/weblets-config.xml"); if (resource != null) container.registerConfig(resource);
public Weblet getWeblet(WebletRequest request) { String webletName = request.getWebletName(); return getWeblet(webletName); }
public InputStream getResourceAsStream(WebletRequest request, String mimetype) throws WebletException { WebletContainerImpl container = (WebletContainerImpl) WebletContainer.getInstance(); return container.getResourceStream(request, mimetype); }
/** * resolves into a uri relative to the current application context //pathInfo resolves into server absolue addresses <p/> /pathInfo into context relative * addresses * * @param weblet * @param pathInfo * @return the resource path */ public String getResource(String weblet, String pathInfo) { /* lets be more tolerant regarding paths */ if (pathInfo == null || pathInfo.trim().equals("")) pathInfo = "/"; WebletContainerImpl container = (WebletContainerImpl) WebletContainer.getInstance(); if (container == null) { initError(); return WEBLETS_NOT_INITIALIZED; } return container.getResourceUri(weblet, pathInfo); }
public void contextDestroyed(ServletContextEvent event) { WebletContainerImpl container = (WebletContainerImpl) WebletContainerImpl.getInstance(); if (container != null) container.destroy(); }
Matcher matcher = null; try { matcher = container.getPattern().matcher(pathInfo); } catch (NullPointerException ex) { Log log = LogFactory.getLog(this.getClass()); String[] parsed = container.parseWebletRequest(contextPath, requestURI, ifModifiedSince); if (parsed != null) { ServletContext servletContext = (ServletContext) external.getContext(); String contentTypeDefault = servletContext.getMimeType(contentName); WebletResponse webResponse = new WebletResponseImpl(contentTypeDefault, httpResponse); container.service(webRequest, webResponse); context.responseComplete();
public String getURL(String weblet, String pathInfo) { /* lets be more tolerant regarding paths */ if (pathInfo == null || pathInfo.trim().equals("")) pathInfo = "/"; WebletContainerImpl container = (WebletContainerImpl) WebletContainer.getInstance(); if (container == null) { initError(); return WEBLETS_NOT_INITIALIZED; } return container.getWebletContextPath() + container.getResourceUri(weblet, pathInfo); }
_webletContextPath = webletContextPath; checkWebletsContextPath(); while (urlIterator.hasNext()) { URL resource = (URL) urlIterator.next(); registerConfig(resource);
String webletsPattern = triggerPattern.replaceAll("\\.", "\\\\.").replaceAll("\\*", "weblets(/.*)"); MessageFormat format = new MessageFormat(formatPattern); WebletContainerImpl container = new WebletContainerImpl(context, contextPath, format, Pattern.compile(webletsPattern), multipleConfigs); // TODO we have to add the multiple configs here as well if needed try { while (urlIterator.hasNext()) { URL resource = (URL) urlIterator.next(); container.registerConfig(resource); container.registerConfig(resource); resource = context.getResource("/META-INF/weblets-config.xml"); if (resource != null) container.registerConfig(resource);
public Weblet getWeblet(WebletRequest request) { String webletName = request.getWebletName(); return getWeblet(webletName); }
public InputStream getResourceAsStream(WebletRequest request, String mimetype) throws WebletException { WebletContainerImpl container = (WebletContainerImpl) WebletContainer.getInstance(); return container.getResourceStream(request, mimetype); }
/** * resolves into a uri relative to the current application context //pathInfo resolves into server absolue addresses <p/> /pathInfo into context relative * addresses * * @param weblet * @param pathInfo * @return the resource path */ public String getResource(String weblet, String pathInfo) { /* lets be more tolerant regarding paths */ if (pathInfo == null || pathInfo.trim().equals("")) pathInfo = "/"; WebletContainerImpl container = (WebletContainerImpl) WebletContainer.getInstance(); if (container == null) { initError(); return WEBLETS_NOT_INITIALIZED; } return container.getResourceUri(weblet, pathInfo); }
String contextPath = container.getWebletContextPath(); Map weblets = container.getRegisteredWeblets(); if (StringUtils.isBlank(contextPath)) contextPath = "/"; if (accessPath.matches(URLREGEXP) && accessPath.indexOf(contextPath) == -1) return null; String[] parsed = container.parseWebletRequest(contextPath, accessPath, -1l); String webletPath = parsed[1]; Weblet weblet = container.getWeblet(webletName); if (weblet == null) return null;
/** * new since 1.1 we now can get the weblet also * as local stream for furhter external processing * if we have our weblet request. * <p/> * We can add a dummy request * * @param request * @return an input stream on our current weblet resource * @throws WebletException * @throws IOException */ public InputStream serviceStream(WebletRequest request, String mimetype) throws WebletException, IOException { Weblet weblet = getWeblet(request); return weblet.serviceStream(request.getPathInfo(), mimetype); }