public static final String encodeResourceURL(String url) { // if it is in portlet environment, just wrap the url in portlet resource url. RequestContext requestContext = RequestContext.get(); if (requestContext.isPortletRequest()) { url = ((PortletRequestContext) requestContext).encodeResourceURL(url).toString(); // use relative url (FIXME: why?) if (url.startsWith("http:") || url.startsWith("https:")) { int offset = url.indexOf('/', 8); if (offset != -1) { url = url.substring(offset); } } } return url; }
/** * @return The current threads request context, will make one if there wasn't one. */ public static final RequestContext get() { RequestContext context = (RequestContext)current.get(); if (context == null) { context = new RequestContext(); } return context; }
/** * Factory method for creating header response * * @return new header response */ protected IHeaderResponse newHeaderResponse() { IHeaderResponse headerResponse = RequestContext.get().getHeaderResponse(); if (headerResponse == null) { // no (portlet) headerResponse override, create a default one headerResponse = new HeaderResponse() { protected Response getRealResponse() { return HtmlHeaderContainer.this.getResponse(); } }; } return headerResponse; }
RequestContext requestContext = RequestContext.get(); boolean portletRequest = requestContext.isPortletRequest(); boolean sharedResourceURL = false; url = requestContext.encodeRenderURL(url == null ? encode(requestCycle, (IBookmarkablePageRequestTarget)requestTarget) : url); url = requestContext.encodeSharedResourceURL(url == null ? encode(requestCycle, (ISharedResourceRequestTarget)requestTarget) : url); sharedResourceURL = true; .getDeclaringClass())) url = requestContext.encodeResourceURL(url); url = requestContext.encodeRenderURL(url);
realResponse.write("<span id=\"" + RequestContext.get().getNamespace() + "_embedded_head\" style=\"display:none\">"); realResponse.write(output);
markupIdPostfix = RequestContext.get().encodeMarkupId(markupIdPostfix);
public void sendRedirect(String redirectLocation) throws IOException { RequestContext rc = RequestContext.get(); if (rc instanceof PortletRequestContext) { String wicketUrl = ((PortletRequestContext)rc).getLastEncodedPath(redirectLocation); if (wicketUrl != null) { redirectLocation = wicketUrl; } else { String contextPath = ((PortletRequestContext)rc).getPortletRequest() .getContextPath(); if (redirectLocation.startsWith(contextPath + "/")) { redirectLocation = redirectLocation.substring(contextPath.length()); if (redirectLocation.length() == 0) { redirectLocation = "/"; } } } } super.sendRedirect(redirectLocation); } }
/** * Construct. */ public RequestContext() { set(this); }
RequestContext requestContext = RequestContext.get(); boolean portletRequest = requestContext.isPortletRequest(); boolean sharedResourceURL = false; url = requestContext.encodeRenderURL(url == null ? encode(requestCycle, (IBookmarkablePageRequestTarget)requestTarget) : url); url = requestContext.encodeSharedResourceURL(url == null ? encode(requestCycle, (ISharedResourceRequestTarget)requestTarget) : url); sharedResourceURL = true; IBehaviorListener.class.isAssignableFrom(rli.getMethod().getDeclaringClass())) url = requestContext.encodeResourceURL(url); url = requestContext.encodeRenderURL(url);
realResponse.write("<span id=\"" + RequestContext.get().getNamespace() + "_embedded_head\" style=\"display:none\">"); realResponse.write(output);
markupIdPostfix = RequestContext.get().encodeMarkupId(markupIdPostfix);
RequestContext rc = RequestContext.get(); if (rc instanceof PortletRequestContext)
/** * Construct. */ public RequestContext() { set(this); }
protected String getContextRelativeValue(String value) { if ("href".equals(attribute) || "src".equals(attribute)) { RequestContext rc = RequestContext.get(); if (rc.isPortletRequest() && !(value.startsWith("http://") || value.startsWith("https://"))) { if ("href".equals(attribute)) { value = ((PortletRequestContext)rc).encodeRenderURL(value).toString(); } else { value = ((PortletRequestContext)rc).encodeSharedResourceURL(value).toString(); } } } return value; }
RequestContext requestContext = RequestContext.get(); boolean portletRequest = requestContext.isPortletRequest(); boolean sharedResourceURL = false; url = requestContext.encodeRenderURL(url == null ? encode(requestCycle, (IBookmarkablePageRequestTarget)requestTarget) : url); url = requestContext.encodeSharedResourceURL(url == null ? encode(requestCycle, (ISharedResourceRequestTarget)requestTarget) : url); sharedResourceURL = true; IBehaviorListener.class.isAssignableFrom(rli.getMethod().getDeclaringClass())) url = requestContext.encodeResourceURL(url); url = requestContext.encodeRenderURL(url);
/** * Factory method for creating header response * * @return new header response */ protected IHeaderResponse newHeaderResponse() { IHeaderResponse headerResponse = RequestContext.get().getHeaderResponse(); if (headerResponse == null) { // no (portlet) headerResponse override, create a default one headerResponse = new HeaderResponse() { @Override protected Response getRealResponse() { return HtmlHeaderContainer.this.getResponse(); } }; } return headerResponse; }
/** * @return The current threads request context, will make one if there wasn't one. */ public static final RequestContext get() { RequestContext context = current.get(); if (context == null) { context = new RequestContext(); } return context; }
/** * Checks if <code>value</code> represents a path and if it does transforms it into a relative * path * * @param value * @return value as a relative path or untouched if not a path */ protected String getContextRelativeValue(String value) { if ("href".equals(attribute) || "src".equals(attribute)) { RequestContext rc = RequestContext.get(); if (rc.isPortletRequest() && !(value.startsWith("http://") || value.startsWith("https://"))) { if ("href".equals(attribute)) { value = ((PortletRequestContext)rc).encodeRenderURL(value).toString(); } else { value = ((PortletRequestContext)rc).encodeSharedResourceURL(value).toString(); } } } return value; }
protected void createRequestContext(WebRequest request, WebResponse response) { if (filterPortletContext == null || !filterPortletContext.createPortletRequestContext(request, response)) { new RequestContext(); } }
public AppendingStringBuffer filter(AppendingStringBuffer responseBuffer) { RequestContext rc = RequestContext.get(); if (rc.isPortletRequest() && ((PortletRequestContext)rc).isEmbedded()) { deleteFragment(responseBuffer, "<?xml", "?>"); deleteFragment(responseBuffer, "<!DOCTYPE", ">"); deleteOpenTag(responseBuffer, "html"); deleteOpenTag(responseBuffer, "head"); deleteOpenTag(responseBuffer, "body"); } return responseBuffer; }