code: public static Object getVariableEL(PageContext pc, String var, Object defaultValue) {
  	StringList list = parse(pc, new ParserString(var), false);
  	if (list == null) return defaultValue;
  
  	int scope = scopeString2Int(pc.ignoreScopes(), list.next());
  	Object coll = null;
  	if (scope == Scope.SCOPE_UNDEFINED) {
  	    coll = pc.undefinedScope().get(KeyImpl.init(list.current()), NullSupportHelper.NULL());
  	    if (coll == NullSupportHelper.NULL()) return defaultValue;
  	}
  	else {
  	    try {
  		coll = VariableInterpreter.scope(pc, scope, list.hasNext());
  		// coll=pc.scope(scope);
  	    }
  	    catch (PageException e) {
  		return defaultValue;
  	    }
  	}
  
  	while (list.hasNext()) {
  	    coll = pc.getVariableUtil().get(pc, coll, KeyImpl.init(list.next()), NullSupportHelper.NULL());
  	    if (coll == NullSupportHelper.NULL()) return defaultValue;
  	}
  	return coll;
      }
docs: get a variable from page context
  
  @param pc Page Context
  @param var variable string to get value to
  @param defaultValue value returnded if variable was not found
  @return the value or default value if not found