Class ServletFns


  • public class ServletFns
    extends java.lang.Object
    Providing servlet relevant functions for EL.
    Author:
    tomyeh
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected ServletFns()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.String encodeThemeURL​(java.lang.String s)
      Encodes a URL with theme key injected.
      static java.lang.String encodeURL​(java.lang.String uri)
      Encodes a URL.
      static RequestContext getCurrentContext()
      Returns the current EL context.
      static java.io.Writer getCurrentOut()
      Returns the current output.
      static javax.servlet.ServletRequest getCurrentRequest()
      Returns the current servlet request, or null if not available.
      static javax.servlet.ServletResponse getCurrentResponse()
      Returns the current servlet response, or null if not available.
      static javax.servlet.ServletContext getCurrentServletContext()
      Returns the current servlet context, or null if not available.
      static void render​(ActionContext ac)
      Renders the DSP fragment from EL.
      static java.lang.String resolveThemeURL​(java.lang.String url)
      Resolves a URL to point to resource served by the current theme.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ServletFns

        protected ServletFns()
    • Method Detail

      • encodeURL

        public static java.lang.String encodeURL​(java.lang.String uri)
                                          throws javax.servlet.ServletException
        Encodes a URL.

        If an URI contains "*", it will be replaced with a proper Locale. For example, if the current Locale is zh_TW and the resource is named "ab*.cd", then it searches "ab_zh_TW.cd", "ab_zh.cd" and then "ab.cd", until any of them is found.

        Note: "*" must be right before ".", or the last character. For example, "ab*.cd" and "ab*" are both correct, while "ab*cd" and "ab*\/cd" are ignored.

        If an URI contains two "*", the first "*" will be replaced with a browser code and the second with a proper locale. The browser code depends on what browser the user are used to visit the web site. Currently, the code for Internet Explorer is "ie", Safari is "saf", Opera is "opr" and all others are "moz". Thus, in the above example, if the resource is named "ab**.cd" and Firefox is used, then it searches "abmoz_zh_TW.cd", "abmoz_zh.cd" and then "abmoz.cd", until any of them is found.

        Throws:
        javax.servlet.ServletException
      • encodeThemeURL

        public static final java.lang.String encodeThemeURL​(java.lang.String s)
                                                     throws javax.servlet.ServletException
        Encodes a URL with theme key injected.
        Parameters:
        s - the string to encode
        Returns:
        the encoded string or null if s is null
        Throws:
        java.io.UnsupportedEncodingException
        javax.servlet.ServletException
        Since:
        6.0.0
      • resolveThemeURL

        public static final java.lang.String resolveThemeURL​(java.lang.String url)
        Resolves a URL to point to resource served by the current theme.
        Parameters:
        url - the default theme url to resolve
        Returns:
        the resolved url or null if url is null
        Since:
        6.5.2
      • getCurrentContext

        public static RequestContext getCurrentContext()
        Returns the current EL context.
      • getCurrentOut

        public static java.io.Writer getCurrentOut()
                                            throws java.io.IOException
        Returns the current output.
        Throws:
        java.io.IOException
      • getCurrentServletContext

        public static javax.servlet.ServletContext getCurrentServletContext()
        Returns the current servlet context, or null if not available.
      • getCurrentRequest

        public static javax.servlet.ServletRequest getCurrentRequest()
        Returns the current servlet request, or null if not available.
      • getCurrentResponse

        public static javax.servlet.ServletResponse getCurrentResponse()
        Returns the current servlet response, or null if not available.
      • render

        public static void render​(ActionContext ac)
                           throws DspException,
                                  java.io.IOException
        Renders the DSP fragment from EL.
        Parameters:
        ac - the action context; never null.
        Throws:
        DspException
        java.io.IOException