11-21-2009 01:46 PM
01-21-2011 07:36 AM
12-13-2011 03:23 AM
12-13-2011 09:34 AM
<select id="language" name="language" size="1" style="width:150px">
<option value="en_US" selected="selected">English</option>
<option value="de_DE">German</option>
<option value="es_ES">Spanish</option>
<option value="fr_FR">French</option>
<option value="it_IT">Italian</option>
<option value="ja_JP">Japanese</option>
<option value="pl_PL">Polish</option>
</select>
</div>
2. I have created the jar, and put it on the Share classpath with the following code:
Locale locale = null;
Cookie[] cookies = request.getCookies();
String acceptLang = null;
// finding ALFRESCO_UI_PREFLANG
if(cookies != null) {
for (int i = 0; i < cookies.length; i++) {
if (cookies[i].getName().equals("ALFRESCO_UI_PREFLANG")) {
acceptLang = cookies[i].getValue();
break;
}
}
}
// if cookie not found, use "Accept-Language"
// set language locale from browser header
if (acceptLang == null) {
acceptLang = request.getHeader("Accept-Language");
}
if (acceptLang != null && acceptLang.length() != 0) {
StringTokenizer t = new StringTokenizer(acceptLang, ",; ");
// get language and convert to java locale format
String language = t.nextToken().replace('-', '_');
// set locale onto Alfresco thread local
locale = I18NUtil.parseLocale(language);
I18NUtil.setLocale(locale);
}
return locale;
3. I have created a Dashlet in the Share which enables a user to change language. The dashlet logic changes the language value stored in the cookie.12-15-2011 04:19 AM
12-18-2011 03:19 AM
package your.pack.name
import java.util.Locale;
import java.util.StringTokenizer;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import org.springframework.extensions.surf.mvc.LocaleResolver;
import org.springframework.extensions.surf.util.I18NUtil;
public class CustomLocaleResolver extends LocaleResolver {
public Locale resolveLocale(HttpServletRequest request) {
// System.out.println("Entering resolveLocale");
Locale locale = null;
Cookie[] cookies = request.getCookies();
String acceptLang = null;
// finding ALFRESCO_UI_PREFLANG
if(cookies != null) {
for (int i = 0; i < cookies.length; i++) {
if (cookies[i].getName().equals("ALFRESCO_UI_PREFLANG")) {
acceptLang = cookies[i].getValue();
break;
}
}
}
// if cookie not found, use "Accept-Language"
// set language locale from browser header
if (acceptLang == null) {
acceptLang = request.getHeader("Accept-Language");
}
if (acceptLang != null && acceptLang.length() != 0) {
StringTokenizer t = new StringTokenizer(acceptLang, ",; ");
// get language and convert to java locale format
String language = t.nextToken().replace('-', '_');
// set locale onto Alfresco thread local
locale = I18NUtil.parseLocale(language);
I18NUtil.setLocale(locale);
}
return locale;
}
}
12-20-2011 10:06 AM
09-04-2015 10:55 AM
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="localeResolver" class="YourLocaleResolver" />
</beans>
02-21-2012 03:55 AM
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.