code: public void intercept(Invocation inv) {
  		Controller c = inv.getController();
  		String localeParaName = getLocaleParaName();
  		String locale = c.getPara(localeParaName);
  		
  		if (StrKit.notBlank(locale)) {	// change locale, write cookie
  			c.setCookie(localeParaName, locale, Const.DEFAULT_I18N_MAX_AGE_OF_COOKIE);
  		}
  		else {							// get locale from cookie and use the default locale if it is null
  			locale = c.getCookie(localeParaName);
  			if (StrKit.isBlank(locale))
  				locale = I18n.defaultLocale;
  		}
  		
  		inv.invoke();
  		
  		if (isSwitchView) {
  			switchView(locale, c);
  		}
  		else {
  			Res res = I18n.use(getBaseName(), locale);
  			c.setAttr(getResName(), res);
  		}
  	}
docs: 1: use the locale from request para if exists. change the locale write to the cookie
  2: use the locale from cookie para if exists.
  3: use the default locale
  4: use setAttr(resName, resObject) pass Res object to the view.