/*******************************************************************************
* Copyright (c) 2013 hangum.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the GNU Lesser Public License v2.1
* which accompanies this distribution, and is available at
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
*
* Contributors:
* hangum - initial API and implementation
******************************************************************************/
package com.hangum.tadpole.commons.util;
import java.util.Locale;
import org.apache.log4j.Logger;
import org.eclipse.rap.rwt.RWT;
/**
*
* @author hangum
*
*/
public class RAPLocaleUtils {
private static final Logger logger = Logger.getLogger(RAPLocaleUtils.class);
public static void changeLocale( Locale locale ) {
try {
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
// System.out.println("1. [현재의 Locale]===>" + RWT.getLocale().toString());
// System.out.println("1. [수정된 Locale]===>" +locale);
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
// System.out.println("#########################################################################################");
RWT.setLocale( locale );
// final String url = createUrl( locale );
// // Uses a non-public API, see http://bugs.eclipse.org/342995
// JSExecutor.executeJS( "parent.window.location.href=\"" + url + "\";" );
} catch(Exception e) {
logger.error("change locale", e);
}
}
private static String createUrl( String locale ) {
StringBuffer url = new StringBuffer();
url.append( RWT.getRequest().getContextPath() );
url.append( RWT.getRequest().getServletPath() );
url.append( "?locale=" );
url.append( locale );
return RWT.getResponse().encodeURL( url.toString() );
}
}