org.zkoss.zk.ui.http
Class I18Ns

java.lang.Object
  extended by org.zkoss.zk.ui.http.I18Ns

public class I18Ns
extends java.lang.Object

Internationalization utilities.

Typical use:


 Object old = I18Ns.setup(session, request, response);
 try {
   ...
 } finally {
   I18Ns.cleanup(old);
 }

Author:
tomyeh

Constructor Summary
I18Ns()
           
 
Method Summary
static void cleanup(javax.servlet.ServletRequest request, java.lang.Object old)
           
static void setPreferredTimeZone(javax.servlet.http.HttpSession hsess, java.util.TimeZone timezone)
          Sets the preferred timezone for the specified session.
static void setPreferredTimeZone(javax.servlet.ServletContext ctx, java.util.TimeZone timezone)
          Sets the preferred timezone for the specified servlet context.
static java.lang.Object setup(javax.servlet.http.HttpSession sess, javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, java.lang.String charset)
          Sets up the internationalization attributes, including locale and time zone.
static java.lang.Object setup(Session sess, javax.servlet.ServletRequest request, javax.servlet.ServletResponse response, java.lang.String charset)
          Sets up the internationalization attributes, including locale and time zone.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

I18Ns

public I18Ns()
Method Detail

setup

public static final java.lang.Object setup(Session sess,
                                           javax.servlet.ServletRequest request,
                                           javax.servlet.ServletResponse response,
                                           java.lang.String charset)
Sets up the internationalization attributes, including locale and time zone.

Parameters:
sess - the session. It cannot be null.
charset - the response's charset. If null or empty, response.setCharacterEncoding won't be called, i.e., the container's default is used.

setup

public static final java.lang.Object setup(javax.servlet.http.HttpSession sess,
                                           javax.servlet.ServletRequest request,
                                           javax.servlet.ServletResponse response,
                                           java.lang.String charset)
Sets up the internationalization attributes, including locale and time zone.

This method is used only for requests that don't count on Session.

  1. This method first checks if any session attribute called Attributes.PREFERRED_LOCALE and Attributes.PREFERRED_TIME_ZONE are set with the preferred locale and timezone. If so, use it as the default.
  2. Then, it checks if any servlet context attribute called Attributes.PREFERRED_LOCALE and Attributes.PREFERRED_TIME_ZONE are set with the preferred locale and timezone. If so, use it as the default.
  3. Then, it checks if any library properties called Attributes.PREFERRED_LOCALE and Attributes.PREFERRED_TIME_ZONE are set with the preferred locale and timezone. If so, use it as the default.
  4. Otherwise, it depends the setting and location of the browser (by checking the request's header).

Parameters:
sess - the HTTP session. It cannot be null.
charset - the response's charset. If null or empty, response.setCharacterEncoding won't be called, i.e., the container's default is used.
Since:
3.6.2

cleanup

public static final void cleanup(javax.servlet.ServletRequest request,
                                 java.lang.Object old)

setPreferredTimeZone

public static final void setPreferredTimeZone(javax.servlet.http.HttpSession hsess,
                                              java.util.TimeZone timezone)
Sets the preferred timezone for the specified session. It is the default timezone for the whole Web session.

Default: null (no preferred timezone -- depending on browser's location).

Parameters:
timezone - the preferred time zone. If null, it means no preferred timezone
Since:
3.6.3
See Also:
setup(org.zkoss.zk.ui.Session, javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String)

setPreferredTimeZone

public static final void setPreferredTimeZone(javax.servlet.ServletContext ctx,
                                              java.util.TimeZone timezone)
Sets the preferred timezone for the specified servlet context. It is the default timezone for the whole Web application.

Default: null (no preferred timezone -- depending on browser's location).

Parameters:
timezone - the preferred time zone. If null, it means no preferred timezone
Since:
3.6.3
See Also:
setup(org.zkoss.zk.ui.Session, javax.servlet.ServletRequest, javax.servlet.ServletResponse, java.lang.String)


Copyright © 2005-2011 Potix Corporation. All Rights Reserved. SourceForge.net Logo