From b3b19183595d0cceff69324942738fb89da15d40 Mon Sep 17 00:00:00 2001 From: Diego Pino Garcia Date: Wed, 19 Aug 2009 10:35:27 +0200 Subject: [PATCH] ItEr22S04ArquitecturaServidorItEr21S04: [FixBug] Added gettext commons library to ganttzk-demo --- ganttzk-demo-webapp/pom.xml | 34 +++++++++++++++++++ .../java/org/navalplanner/web/I18nHelper.java | 31 +++++++++++++++++ .../src/main/webapp/WEB-INF/tld/i18n.tld | 15 ++++++++ 3 files changed, 80 insertions(+) create mode 100644 ganttzk-demo-webapp/src/main/java/org/navalplanner/web/I18nHelper.java create mode 100644 ganttzk-demo-webapp/src/main/webapp/WEB-INF/tld/i18n.tld diff --git a/ganttzk-demo-webapp/pom.xml b/ganttzk-demo-webapp/pom.xml index 874d52c2a..f76567596 100644 --- a/ganttzk-demo-webapp/pom.xml +++ b/ganttzk-demo-webapp/pom.xml @@ -13,9 +13,33 @@ ganttzk-demo-webapp + + + + + org.xnap.commons + maven-gettext-plugin + + i18n.Messages + ${project.build.sourceDirectory}/../resources/i18n + -k_ + + + + + + + org.xnap.commons + gettext-commons + org.springframework @@ -69,6 +93,16 @@ javax.servlet servlet-api + + + commons-io + commons-io + 1.2 + compile + diff --git a/ganttzk-demo-webapp/src/main/java/org/navalplanner/web/I18nHelper.java b/ganttzk-demo-webapp/src/main/java/org/navalplanner/web/I18nHelper.java new file mode 100644 index 000000000..0a9e2299c --- /dev/null +++ b/ganttzk-demo-webapp/src/main/java/org/navalplanner/web/I18nHelper.java @@ -0,0 +1,31 @@ +package org.navalplanner.web; + +import java.util.HashMap; +import java.util.Locale; + +import org.xnap.commons.i18n.I18n; +import org.xnap.commons.i18n.I18nFactory; +import org.zkoss.util.Locales; + + +public class I18nHelper { + + private static HashMap localesCache = new HashMap(); + + public static I18n getI18n() { + if (localesCache.keySet().contains(Locales.getCurrent())) { + return localesCache.get(Locales.getCurrent()); + } + + I18n i18n = I18nFactory.getI18n(I18nHelper.class, Locales + .getCurrent(), + org.xnap.commons.i18n.I18nFactory.FALLBACK); + localesCache.put(Locales.getCurrent(), i18n); + + return i18n; + } + + public static String _(String str) { + return getI18n().tr(str); + } +} \ No newline at end of file diff --git a/ganttzk-demo-webapp/src/main/webapp/WEB-INF/tld/i18n.tld b/ganttzk-demo-webapp/src/main/webapp/WEB-INF/tld/i18n.tld new file mode 100644 index 000000000..32d5b8173 --- /dev/null +++ b/ganttzk-demo-webapp/src/main/webapp/WEB-INF/tld/i18n.tld @@ -0,0 +1,15 @@ + + + http://org.navalplanner.web/i18n + + + + _ + org.navalplanner.web.I18nHelper + + java.lang.String _(java.lang.String name) + + + + +