code: @Override
      public TimeZone getUserTimeZone() {
          TimeZone timeZone = findCachedTimeZone();
          if (timeZone != null) {
              // mainly here if you call this in action process
              // because time-zone process is called before action
              return timeZone;
          }
          timeZone = findSessionTimeZone();
          if (timeZone != null) {
              return timeZone;
          }
          return getRequestedTimeZone();
      }
docs: -------------