Author: tchemit Date: 2011-01-26 16:02:13 +0100 (Wed, 26 Jan 2011) New Revision: 2179 Url: http://nuiton.org/repositories/revision/jaxx/2179 Log: use new i18n api + optimize dependencies + add validators definitions in demo Added: trunk/jaxx-demo/src/main/resources/validators.xml Modified: trunk/jaxx-demo/pom.xml trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java trunk/jaxx-demo/src/main/java/jaxx/demo/RunDemo.java trunk/jaxx-demo/src/test/java/jaxx/demo/BeanValidatorDetectorTest.java Modified: trunk/jaxx-demo/pom.xml =================================================================== --- trunk/jaxx-demo/pom.xml 2011-01-26 14:41:27 UTC (rev 2178) +++ trunk/jaxx-demo/pom.xml 2011-01-26 15:02:13 UTC (rev 2179) @@ -74,6 +74,11 @@ </dependency> <dependency> + <groupId>org.nuiton</groupId> + <artifactId>nuiton-validator</artifactId> + </dependency> + + <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </dependency> Modified: trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java =================================================================== --- trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java 2011-01-26 14:41:27 UTC (rev 2178) +++ trunk/jaxx-demo/src/main/java/jaxx/demo/DemoUIHandler.java 2011-01-26 15:02:13 UTC (rev 2179) @@ -88,7 +88,8 @@ /** Logger */ static private Log log = LogFactory.getLog(DemoUIHandler.class); - static final JAXXContextEntryDef<DemoUI> MAIN_UI_ENTRY_DEF = JAXXUtil.newContextEntryDef("mainui", DemoUI.class); + static final JAXXContextEntryDef<DemoUI> MAIN_UI_ENTRY_DEF = + JAXXUtil.newContextEntryDef("mainui", DemoUI.class); /** * Methode pour initialiser l'ui principale sans l'afficher. @@ -102,14 +103,15 @@ if (log.isDebugEnabled()) { log.debug("fullscreen ? " + config.isFullScreen()); } - DecoratorProvider decoratorProvider = rootContext.getContextValue(DecoratorProvider.class); + DecoratorProvider decoratorProvider = + rootContext.getContextValue(DecoratorProvider.class); - if (!config.getLocale().equals(I18n.getStore().getLanguage().getLocale())) { + if (!config.getLocale().equals(I18n.getDefaultLocale())) { if (log.isInfoEnabled()) { log.info("re-init I18n with locale " + config.getLocale()); } // change i18n language - I18n.init(config.getLocale()); + I18n.setDefaultLocale(config.getLocale()); // reload decorators decoratorProvider.reload(); } Modified: trunk/jaxx-demo/src/main/java/jaxx/demo/RunDemo.java =================================================================== --- trunk/jaxx-demo/src/main/java/jaxx/demo/RunDemo.java 2011-01-26 14:41:27 UTC (rev 2178) +++ trunk/jaxx-demo/src/main/java/jaxx/demo/RunDemo.java 2011-01-26 15:02:13 UTC (rev 2179) @@ -67,7 +67,7 @@ long t0 = System.nanoTime(); - I18n.setInitializer(new DefaultI18nInitializer("jaxx-demo-i18n")); + I18n.init(new DefaultI18nInitializer("jaxx-demo-i18n"), null); Runtime.getRuntime().addShutdownHook(new ShutdownHook()); @@ -93,7 +93,7 @@ long t00 = System.nanoTime(); // init i18n - I18n.init(config.getLocale()); + I18n.setDefaultLocale(config.getLocale()); log.info("language : " + config.getLocale()); @@ -154,7 +154,7 @@ * @return l'context partagée * @throws IllegalStateException si un contexte applicatif a déja été positionné. */ - protected static synchronized DefaultApplicationContext init() throws IllegalStateException { + protected static DefaultApplicationContext init() throws IllegalStateException { if (isInit()) { throw new IllegalStateException("there is an already application context registred."); } Added: trunk/jaxx-demo/src/main/resources/validators.xml =================================================================== --- trunk/jaxx-demo/src/main/resources/validators.xml (rev 0) +++ trunk/jaxx-demo/src/main/resources/validators.xml 2011-01-26 15:02:13 UTC (rev 2179) @@ -0,0 +1,58 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + ObServe :: Services + + $Id$ + $HeadURL: https://svn.mpl.ird.fr/osiris/observe/trunk/observe-business/src/main/resour... $ + %% + Copyright (C) 2008 - 2010 IRD, Codelutin, Tony Chemit + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this program. If not, see + <http://www.gnu.org/licenses/gpl-3.0.html>. + #L% + --> + +<!DOCTYPE validators PUBLIC + "-//OpenSymphony Group//XWork Validator Config 1.0//EN" + "http://www.opensymphony.com/xwork/xwork-validator-config-1.0.dtd"> +<validators> + <!-- les validateurs fournis par XWork --> + <validator name="required" class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/> + <validator name="requiredstring" class="com.opensymphony.xwork2.validator.validators.RequiredStringValidator"/> + <validator name="regex" class="com.opensymphony.xwork2.validator.validators.RegexFieldValidator"/> + <validator name="stringlength" class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/> + <validator name="int" class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/> + <validator name="long" class="com.opensymphony.xwork2.validator.validators.LongRangeFieldValidator"/> + <validator name="short" class="com.opensymphony.xwork2.validator.validators.ShortRangeFieldValidator"/> + <validator name="double" class="com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator"/> + <validator name="date" class="com.opensymphony.xwork2.validator.validators.DateRangeFieldValidator"/> + <validator name="fieldexpression" class="com.opensymphony.xwork2.validator.validators.FieldExpressionValidator"/> + <validator name="email" class="com.opensymphony.xwork2.validator.validators.EmailValidator"/> + <validator name="url" class="com.opensymphony.xwork2.validator.validators.URLValidator"/> + + <validator name="visitor" class="com.opensymphony.xwork2.validator.validators.VisitorFieldValidator"/> + <validator name="conditionalvisitor" class="com.opensymphony.xwork2.validator.validators.ConditionalVisitorFieldValidator"/> + + <!-- les validateurs fournis par Nuiton-validator --> + <validator name="collectionFieldExpression" class="org.nuiton.validator.xwork2.field.CollectionFieldExpressionValidator"/> + <validator name="collectionUniqueKey" class="org.nuiton.validator.xwork2.field.CollectionUniqueKeyValidator"/> + <validator name="requiredFile" class="org.nuiton.validator.xwork2.field.RequiredFileFieldValidator"/> + <validator name="existingFile" class="org.nuiton.validator.xwork2.field.ExistingFileFieldValidator"/> + <validator name="notExistingFile" class="org.nuiton.validator.xwork2.field.NotExistingFileFieldValidator"/> + <validator name="existingDirectory" class="org.nuiton.validator.xwork2.field.ExistingDirectoryFieldValidator"/> + <validator name="notExistingDirectory" class="org.nuiton.validator.xwork2.field.NotExistingDirectoryFieldValidator"/> + <validator name="fieldexpressionwithparams" class="org.nuiton.validator.xwork2.field.FieldExpressionWithParamsValidator"/> + +</validators> Property changes on: trunk/jaxx-demo/src/main/resources/validators.xml ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Modified: trunk/jaxx-demo/src/test/java/jaxx/demo/BeanValidatorDetectorTest.java =================================================================== --- trunk/jaxx-demo/src/test/java/jaxx/demo/BeanValidatorDetectorTest.java 2011-01-26 14:41:27 UTC (rev 2178) +++ trunk/jaxx-demo/src/test/java/jaxx/demo/BeanValidatorDetectorTest.java 2011-01-26 15:02:13 UTC (rev 2179) @@ -32,7 +32,6 @@ import org.nuiton.validator.AbstractValidatorDetectorTest; import org.nuiton.validator.NuitonValidator; import org.nuiton.validator.NuitonValidatorScope; -import org.nuiton.validator.ValidatorTestHelper; import org.nuiton.validator.xwork2.XWork2NuitonValidatorProvider; import java.io.File; @@ -64,14 +63,14 @@ iterator = result.iterator(); validator = iterator.next(); - ValidatorTestHelper.assertValidatorModel(validator, null, Identity.class, NuitonValidatorScope.values()); - ValidatorTestHelper.assertValidatorEffectiveScopes(validator, NuitonValidatorScope.ERROR, NuitonValidatorScope.WARNING, NuitonValidatorScope.INFO); + assertValidatorModel(validator, null, Identity.class, NuitonValidatorScope.values()); + assertValidatorEffectiveScopes(validator, NuitonValidatorScope.ERROR, NuitonValidatorScope.WARNING, NuitonValidatorScope.INFO); // ValidatorTestHelper.assertValidatorEffectiveFields(validator, NuitonValidatorScope.ERROR, Person.PROPERTY_NAME, Person.PROPERTY_FIRSTNAME); // ValidatorTestHelper.assertValidatorEffectiveFields(validator, NuitonValidatorScope.WARNING, Person.PROPERTY_PET); validator = iterator.next(); - ValidatorTestHelper.assertValidatorModel(validator, null, Model.class, NuitonValidatorScope.values()); - ValidatorTestHelper.assertValidatorEffectiveScopes(validator, NuitonValidatorScope.ERROR, NuitonValidatorScope.WARNING, NuitonValidatorScope.INFO); + assertValidatorModel(validator, null, Model.class, NuitonValidatorScope.values()); + assertValidatorEffectiveScopes(validator, NuitonValidatorScope.ERROR, NuitonValidatorScope.WARNING, NuitonValidatorScope.INFO); // ValidatorTestHelper.assertValidatorEffectiveFields(validator, NuitonValidatorScope.ERROR, Pet.PROPERTY_NAME); }