code: public Object resolveVariable(String pName,
                                    Object pContext)
              throws ELException {
          PageContext ctx = (PageContext) pContext;
  
          // Check for implicit objects
          if ("pageContext".equals(pName)) {
              return ctx;
          } else if ("pageScope".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getPageScopeMap();
          } else if ("requestScope".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getRequestScopeMap();
          } else if ("sessionScope".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getSessionScopeMap();
          } else if ("applicationScope".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getApplicationScopeMap();
          } else if ("param".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getParamMap();
          } else if ("paramValues".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getParamsMap();
          } else if ("header".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getHeaderMap();
          } else if ("headerValues".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getHeadersMap();
          } else if ("initParam".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getInitParamMap();
          } else if ("cookie".equals(pName)) {
              return ImplicitObjects.
                      getImplicitObjects(ctx).
                      getCookieMap();
          }
  
          // Otherwise, just look it up in the page context
          else {
              return ctx.findAttribute(pName);
          }
      }
docs: Resolves the specified variable within the given context.
  Returns null if the variable is not found.