Index: /ether_megapoli/trunk/common/Common.iml
===================================================================
--- /ether_megapoli/trunk/common/Common.iml	(revision 305)
+++ /ether_megapoli/trunk/common/Common.iml	(revision 306)
@@ -22,5 +22,4 @@
       </library>
     </orderEntry>
-    <orderEntry type="module" module-name="Domain" />
   </component>
 </module>
Index: /ether_megapoli/trunk/service/implementation/com/medias/megapoli/struts/actions/LogonAction.java
===================================================================
--- /ether_megapoli/trunk/service/implementation/com/medias/megapoli/struts/actions/LogonAction.java	(revision 305)
+++ /ether_megapoli/trunk/service/implementation/com/medias/megapoli/struts/actions/LogonAction.java	(revision 306)
@@ -46,5 +46,5 @@
 				Personne pers = annu.getPersonne (login, pwd);
 				if (pers == null)
-					errors.add (ActionErrors.GLOBAL_MESSAGE, new ActionError ("errors.logon.notFound",Context.getWebmaster(request)));
+					errors.add (ActionErrors.GLOBAL_MESSAGE, new ActionError ("login.error.notFound",Context.getWebmaster(request)));
 				else {
 					request.getSession().setAttribute( "SES_USER", pers);
@@ -56,5 +56,5 @@
 				System.out.println ("exception_logonAction");
 				e.printStackTrace ();
-				errors.add (ActionErrors.GLOBAL_MESSAGE, new ActionError ("errors.logon.failed",Context.getWebmaster(request)));
+				errors.add (ActionErrors.GLOBAL_MESSAGE, new ActionError ("login.error.failed",Context.getWebmaster(request)));
 			}
 			
Index: /ether_megapoli/trunk/service/implementation/com/medias/megapoli/struts/forms/DatasForm.java
===================================================================
--- /ether_megapoli/trunk/service/implementation/com/medias/megapoli/struts/forms/DatasForm.java	(revision 305)
+++ /ether_megapoli/trunk/service/implementation/com/medias/megapoli/struts/forms/DatasForm.java	(revision 306)
@@ -263,5 +263,5 @@
         if( person == null )
         {
-            errors.add( "dateFin", new ActionError( "errors.access.login" ) );
+            errors.add( "dateFin", new ActionError( "login.error.unknown" ) );
             return errors;
         }
Index: /ether_megapoli/trunk/web/WEB-INF/validation.xml
===================================================================
--- /ether_megapoli/trunk/web/WEB-INF/validation.xml	(revision 305)
+++ /ether_megapoli/trunk/web/WEB-INF/validation.xml	(revision 306)
@@ -23,10 +23,10 @@
     			property="login"
     			depends="required">
-    				<arg0 key="errors.logon.login"/>
+    				<arg0 key="login.error.login"/>
     		</field>
     		<field
     			property="password"
     			depends="required">
-    				<arg0 key="errors.logon.password"/>
+    				<arg0 key="login.error.password"/>
     		</field>
     	</form>
Index: /ether_megapoli/trunk/web/backoffice/user.jsp
===================================================================
--- /ether_megapoli/trunk/web/backoffice/user.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/backoffice/user.jsp	(revision 306)
@@ -173,5 +173,5 @@
             <td>
                 <button id="add_or_modify_user" class="small positive"></button>
-                <button id="init" class="small positive"><bean:message key="data.visualization.button.init"/></button>
+                <button id="init" class="small positive"><bean:message key="visualization.button.init"/></button>
             </td>
         </tr>
@@ -212,5 +212,5 @@
         interfaceTexts["<%=UserRole.TECHNICIEN%>"] = "<bean:message key="bo.user.technician"/>";
 
-        interfaceTexts["<%=WebException.WebCode.USER_ALREADY_EXISTS%>"] = "<bean:message key="app.dataProtocol.alreadyExist"/>";
+        interfaceTexts["<%=WebException.WebCode.USER_ALREADY_EXISTS%>"] = "<bean:message key="login.dataProtocol.alreadyExist"/>";
         interfaceTexts["<%=WebException.WebCode.ERROR_EMAIL_CANNOT_BE_SEND%>"] = "<bean:message key="bo.user.emailNotSend"/>";
 
Index: /ether_megapoli/trunk/web/data/parameter.jsp
===================================================================
--- /ether_megapoli/trunk/web/data/parameter.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/data/parameter.jsp	(revision 306)
@@ -41,5 +41,5 @@
         <script type="text/javascript">
             var interfaceTexts = $A( "" );
-            interfaceTexts["data.visualization.noParameter"] = '<bean:message key="data.visualization.noParameter"/>';
+            interfaceTexts["visualization.noParameter"] = '<bean:message key="visualization.noParameter"/>';
             interfaceTexts["data.access.param2"] = '<bean:message key="data.access.param2" arg0=""/>';
             interfaceTexts["data.access.param2.s"] = '<bean:message key="data.access.param2" arg0="s"/>';
@@ -78,5 +78,5 @@
                     this.parameters.addOpenListener( jQuery.proxy( this.onSelectParameter, this ) );
                     this.loadingParameters.hide();
-                    this.parameters.displayByCategory( this.containerParameters, "NoParameter", interfaceTexts["data.visualization.noParameter"], "parameterElement" );
+                    this.parameters.displayByCategory( this.containerParameters, "NoParameter", interfaceTexts["visualization.noParameter"], "parameterElement" );
                 },
 
Index: /ether_megapoli/trunk/web/data/plateform.jsp
===================================================================
--- /ether_megapoli/trunk/web/data/plateform.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/data/plateform.jsp	(revision 306)
@@ -42,5 +42,5 @@
         <script type="text/javascript">
             var interfaceTexts = $A( "" );
-            interfaceTexts["data.visualization.noPlateform"] = '<bean:message key="data.visualization.noPlateform"/>';
+            interfaceTexts["visualization.noPlateform"] = '<bean:message key="visualization.noPlateform"/>';
             interfaceTexts["data.access.plat2"] = '<bean:message key="data.access.plat2" arg0=""/>';
             interfaceTexts["data.access.plat2.s"] = '<bean:message key="data.access.plat2" arg0="s"/>';
@@ -145,5 +145,5 @@
                     {
                         var divNoPlateform = $( document.createElement( "div" ) );
-                        divNoPlateform.html( "&nbsp;&nbsp;" + interfaceTexts["data.visualization.noPlateform"] );
+                        divNoPlateform.html( "&nbsp;&nbsp;" + interfaceTexts["visualization.noPlateform"] );
                         this.containerMobilePlateforms.append( divNoPlateform );
                     }
@@ -153,5 +153,5 @@
                     {
                         var divNoPlateform = $( document.createElement( "div" ) );
-                        divNoPlateform.html( "&nbsp;&nbsp;" + interfaceTexts["data.visualization.noPlateform"] );
+                        divNoPlateform.html( "&nbsp;&nbsp;" + interfaceTexts["visualization.noPlateform"] );
                         this.containerFixePlateforms.append( divNoPlateform );
                     }
Index: /ether_megapoli/trunk/web/project/errors.jsp
===================================================================
--- /ether_megapoli/trunk/web/project/errors.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/project/errors.jsp	(revision 306)
@@ -3,4 +3,5 @@
 <%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html"%>
 <%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
 
 <tiles:insert page="/resources/templates/templateMegapoli.jsp" flush="true">
@@ -18,4 +19,10 @@
 	<tiles:put name="body" type="string">
 		<html:errors/>
+
+        <c:if test="${not empty errors}">
+            <BR/><BR/><BR/><BR/>
+            <div id="errors"><bean:message key="${errors}"/></div>
+        </c:if>
+
 	</tiles:put>
 </tiles:insert>
Index: /ether_megapoli/trunk/web/project/login.jsp
===================================================================
--- /ether_megapoli/trunk/web/project/login.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/project/login.jsp	(revision 306)
@@ -10,21 +10,21 @@
 
 
-    <tiles:put name="title" type="string"><bean:message key="app.title"/> - <bean:message key="data.authentification"/></tiles:put>
+    <tiles:put name="title" type="string"><bean:message key="app.title"/> - <bean:message key="login.authentification"/></tiles:put>
     <tiles:put name="nav" type="string">
         <html:link page="/index.jsp"><bean:message key="app.home"/></html:link>&nbsp;&gt;
         <html:link page="/data?methodName=viewDataResume"><bean:message key="app.data"/></html:link>&nbsp;&gt;
-        <html:link page="/project?methodName=viewLogin"><bean:message key="data.authentification"/></html:link>
+        <html:link page="/project?methodName=viewLogin"><bean:message key="login.authentification"/></html:link>
     </tiles:put>
 
     <%--****************** CONTENT ****************** --%>
-    <tiles:put name="bodytitle" type="string"><bean:message key="data.authentification"/></tiles:put>
+    <tiles:put name="bodytitle" type="string"><bean:message key="login.authentification"/></tiles:put>
 
     <tiles:put name="body" type="string">
-        <bean:message key="data.authentification.intro"/>
+        <bean:message key="login.intro"/>
 
         <script type="text/javascript">
             window.onload = function()
             {
-                getLoginModule().showLogin( "<bean:message key="data.authentification.text"/>" );
+                getLoginModule().showLogin( "<bean:message key="login.text"/>" );
             }
         </script>
Index: /ether_megapoli/trunk/web/resources/js/classesForJQuery/LoginButton.js
===================================================================
--- /ether_megapoli/trunk/web/resources/js/classesForJQuery/LoginButton.js	(revision 305)
+++ /ether_megapoli/trunk/web/resources/js/classesForJQuery/LoginButton.js	(revision 306)
@@ -24,11 +24,11 @@
         // Texts
         this.connexionText = param.connexionText ? param.connexionText : loginTexts["app.connexion"];
-        this.loginText = param.loginText ? param.loginText : loginTexts["data.authentification.login"];
-        this.pwdText = param.pwdText ? param.pwdText : loginTexts["data.authentification.password"];
-        this.submitText = param.submitText ? param.submitText : loginTexts["data.authentification.sign"];
-        this.forgotPText = param.forgotPText ? param.forgotPText : loginTexts["data.authentification.pwdForget"];
-        this.forgotUNPHelpText = param.forgotUNPHelpText ? param.forgotUNPHelpText : loginTexts["data.authentification.loginForget.help"];
-        this.forgotUNPText = param.forgotUNPText ? param.forgotUNPText : loginTexts["data.authentification.loginForget"];
-        this.inscriptionText = param.inscriptionText ? param.inscriptionText : loginTexts["data.authentification.inscription"];
+        this.loginText = param.loginText ? param.loginText : loginTexts["login"];
+        this.pwdText = param.pwdText ? param.pwdText : loginTexts["login.password"];
+        this.submitText = param.submitText ? param.submitText : loginTexts["login.sign"];
+        this.forgotPText = param.forgotPText ? param.forgotPText : loginTexts["login.pwdForget"];
+        this.forgotUNPHelpText = param.forgotUNPHelpText ? param.forgotUNPHelpText : loginTexts["loginForget.help"];
+        this.forgotUNPText = param.forgotUNPText ? param.forgotUNPText : loginTexts["loginForget"];
+        this.inscriptionText = param.inscriptionText ? param.inscriptionText : loginTexts["login.inscription"];
         this.errorText = param.errorText ? param.errorText : loginTexts[this.errors];
     },
Index: /ether_megapoli/trunk/web/resources/js/classesForJQuery/etherHelper.js
===================================================================
--- /ether_megapoli/trunk/web/resources/js/classesForJQuery/etherHelper.js	(revision 305)
+++ /ether_megapoli/trunk/web/resources/js/classesForJQuery/etherHelper.js	(revision 306)
@@ -49,5 +49,5 @@
     {
         if( !getJSONUser() )
-            getLoginModule().showLogin( loginTexts["data.authentification.text"] );
+            getLoginModule().showLogin( loginTexts["login.text"] );
         else
             document.location.href = getPath() + href;
Index: /ether_megapoli/trunk/web/resources/jsp/megapoliHead.jsp
===================================================================
--- /ether_megapoli/trunk/web/resources/jsp/megapoliHead.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/resources/jsp/megapoliHead.jsp	(revision 306)
@@ -151,5 +151,5 @@
                 .dialog( {
                              autoOpen: false,
-                             title: loginTexts["data.authentification.inscription"],
+                             title: loginTexts["login.inscription"],
                              height: 700,
                              width: 600
@@ -196,5 +196,5 @@
     if( '' == $( "#lastName" ).val() || '' == $( "#email" ).val() || '' == $( "#password" ).val() )
     {
-        showErrorAccount( null, templateTexts["app.dataProtocolFields"] );
+        showErrorAccount( null, templateTexts["login.dataProtocolFields"] );
         return;
     }
@@ -203,5 +203,5 @@
         createAccount();
     else
-        showErrorAccount( null, templateTexts["app.dataProtocolAccept"] );
+        showErrorAccount( null, templateTexts["login.dataProtocolAccept"] );
 }
 
@@ -221,5 +221,5 @@
     $( "#infosAccount" ).removeClass( "containerErrors" );
     $( "#infosAccount" ).addClass( "containerInfos" );
-    $( "#infosAccount" ).html( templateTexts["app.dataProtocol.account"] );
+    $( "#infosAccount" ).html( templateTexts["login.dataProtocol.account"] );
     $( "#infosAccount" ).show();
 }
Index: /ether_megapoli/trunk/web/resources/templates/template.jsp
===================================================================
--- /ether_megapoli/trunk/web/resources/templates/template.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/resources/templates/template.jsp	(revision 306)
@@ -198,10 +198,10 @@
                 <li><br/>
                     <html:link page="/visualization?methodName=view">
-                        <bean:message key="all.visualization"/>
+                        <bean:message key="visualization"/>
                     </html:link>
                 </li>
                 <li>&nbsp;&nbsp;&nbsp;&gt;&nbsp;
                     <html:link page="/visualization?methodName=viewParametersByPlateform">
-                        <bean:message key="data.visualization"/>
+                        <bean:message key="visualization"/>
                     </html:link>
                 </li>
Index: /ether_megapoli/trunk/web/resources/templates/templateBackoffice.jsp
===================================================================
--- /ether_megapoli/trunk/web/resources/templates/templateBackoffice.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/resources/templates/templateBackoffice.jsp	(revision 306)
@@ -108,14 +108,14 @@
     var loginTexts = $A( "" );
     loginTexts["app.connexion"] = '<bean:message key="app.connexion"/>';
-    loginTexts["data.authentification.login"] = '<bean:message key="data.authentification.login"/>';
-    loginTexts["data.authentification.password"] = '<bean:message key="data.authentification.password"/>';
-    loginTexts["data.authentification.sign"] = '<bean:message key="data.authentification.sign"/>';
-    loginTexts["data.authentification.pwdForget"] = '<bean:message key="data.authentification.pwdForget"/>';
-    loginTexts["data.authentification.loginForget.help"] = '<bean:message key="data.authentification.loginForget.help"/>';
-    loginTexts["data.authentification.loginForget"] = '<bean:message key="data.authentification.loginForget"/>';
-    loginTexts["errors.logon.notFound"] = "<bean:message key='errors.logon.notFound' arg0="<%=Context.getWebmaster( request )%>"/>";
-    loginTexts["errors.logon.wrongPassword"] = "<bean:message key='errors.logon.wrongPassword'/>";
-    loginTexts["errors.logon.failed"] = "<bean:message key='errors.logon.failed' arg0="<%=Context.getWebmaster( request )%>"/>";
-    loginTexts["errors.logon.notAccepted"] = "<bean:message key='errors.logon.notAccepted'/>";
+    loginTexts["login"] = '<bean:message key="login"/>';
+    loginTexts["login.password"] = '<bean:message key="login.password"/>';
+    loginTexts["login.sign"] = '<bean:message key="login.sign"/>';
+    loginTexts["login.pwdForget"] = '<bean:message key="login.pwdForget"/>';
+    loginTexts["login.loginForget.help"] = '<bean:message key="login.loginForget.help"/>';
+    loginTexts["login.loginForget"] = '<bean:message key="login.loginForget"/>';
+    loginTexts["login.error.notFound"] = "<bean:message key='login.error.notFound' arg0="<%=Context.getWebmaster( request )%>"/>";
+    loginTexts["login.error.wrongPassword"] = "<bean:message key='login.error.wrongPassword'/>";
+    loginTexts["login.error.failed"] = "<bean:message key='login.error.failed' arg0="<%=Context.getWebmaster( request )%>"/>";
+    loginTexts["login.error.notAccepted"] = "<bean:message key='login.error.notAccepted'/>";
     loginTexts["<%=UserRole.ADMINISTRATOR%>"] = '<bean:message key="app.administrator"/>';
     loginTexts["<%=UserRole.TECHNICIEN%>"] = '<bean:message key="app.technician"/>';
Index: /ether_megapoli/trunk/web/resources/templates/templateMegapoli.jsp
===================================================================
--- /ether_megapoli/trunk/web/resources/templates/templateMegapoli.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/resources/templates/templateMegapoli.jsp	(revision 306)
@@ -109,8 +109,8 @@
 
             <li class="last">
-                <html:link page="/visualization?methodName=view"><span><bean:message key="all.visualization"/></span></html:link>
+                <html:link page="/visualization?methodName=view"><span><bean:message key="visualization"/></span></html:link>
                 <div>
                     <ul>
-                        <li><html:link page="/visualization?methodName=viewParametersByPlateform"><span><bean:message key="data.visualization"/></span></html:link></li>
+                        <li><html:link page="/visualization?methodName=viewParametersByPlateform"><span><bean:message key="visualization"/></span></html:link></li>
                         <li><html:link page="/visualization?methodName=viewInWork"><span><bean:message key="simulation.visualization"/></span></html:link></li>
                     </ul>
@@ -160,24 +160,24 @@
     templateTexts["app.mentions"] = '<bean:message key="app.mentions"/>';
     templateTexts["app.infos"] = '<bean:message key="app.infos"/>';
-    templateTexts["app.dataProtocolAccept"] = "<bean:message key="app.dataProtocolAccept"/>";
-    templateTexts["app.dataProtocolFields"] = "<bean:message key="app.dataProtocolFields"/>";
-    templateTexts["app.dataProtocol.account"] = "<bean:message key="app.dataProtocol.account"/>";
-    templateTexts["<%=WebException.WebCode.USER_ALREADY_EXISTS%>"] = "<bean:message key="app.dataProtocol.alreadyExist"/>";
+    templateTexts["login.dataProtocolAccept"] = "<bean:message key="login.dataProtocolAccept"/>";
+    templateTexts["login.dataProtocolFields"] = "<bean:message key="login.dataProtocolFields"/>";
+    templateTexts["login.dataProtocol.account"] = "<bean:message key="login.dataProtocol.account"/>";
+    templateTexts["<%=WebException.WebCode.USER_ALREADY_EXISTS%>"] = "<bean:message key="login.dataProtocol.alreadyExist"/>";
 
     // Needed texts if you use the library LoginButton.js
     var loginTexts = $A( "" );
     loginTexts["app.connexion"] = '<bean:message key="app.connexion"/>';
-    loginTexts["data.authentification.login"] = '<bean:message key="data.authentification.login"/>';
-    loginTexts["data.authentification.password"] = '<bean:message key="data.authentification.password"/>';
-    loginTexts["data.authentification.sign"] = '<bean:message key="data.authentification.sign"/>';
-    loginTexts["data.authentification.pwdForget"] = '<bean:message key="data.authentification.pwdForget"/>';
-    loginTexts["data.authentification.loginForget.help"] = '<bean:message key="data.authentification.loginForget.help"/>';
-    loginTexts["data.authentification.loginForget"] = '<bean:message key="data.authentification.loginForget"/>';
-    loginTexts["data.authentification.inscription"] = '<bean:message key="data.authentification.inscription"/>';
-    loginTexts["errors.logon.notFound"] = "<bean:message key='errors.logon.notFound'/>";
-    loginTexts["errors.logon.wrongPassword"] = "<bean:message key='errors.logon.wrongPassword'/>";
-    loginTexts["errors.logon.failed"] = "<bean:message key='errors.logon.failed' arg0="<%=Context.getWebmaster( request )%>"/>";
-    loginTexts["errors.logon.notAccepted"] = "<bean:message key='errors.logon.notAccepted'/>";
-    loginTexts["data.authentification.text"] = "<bean:message key="data.authentification.text"/>";
+    loginTexts["login"] = '<bean:message key="login"/>';
+    loginTexts["login.password"] = '<bean:message key="login.password"/>';
+    loginTexts["login.sign"] = '<bean:message key="login.sign"/>';
+    loginTexts["login.pwdForget"] = '<bean:message key="login.pwdForget"/>';
+    loginTexts["login.loginForget.help"] = '<bean:message key="login.loginForget.help"/>';
+    loginTexts["login.loginForget"] = '<bean:message key="login.loginForget"/>';
+    loginTexts["login.inscription"] = '<bean:message key="login.inscription"/>';
+    loginTexts["login.error.notFound"] = "<bean:message key='login.error.notFound'/>";
+    loginTexts["login.error.wrongPassword"] = "<bean:message key='login.error.wrongPassword'/>";
+    loginTexts["login.error.failed"] = "<bean:message key='login.error.failed' arg0="<%=Context.getWebmaster( request )%>"/>";
+    loginTexts["login.error.notAccepted"] = "<bean:message key='login.error.notAccepted'/>";
+    loginTexts["login.text"] = "<bean:message key="login.text"/>";
     loginTexts["<%=UserRole.ADMINISTRATOR%>"] = '<bean:message key="app.administrator"/>';
     loginTexts["<%=UserRole.TECHNICIEN%>"] = '<bean:message key="app.technician"/>';
Index: /ether_megapoli/trunk/web/src/ApplicationResources.properties
===================================================================
--- /ether_megapoli/trunk/web/src/ApplicationResources.properties	(revision 305)
+++ /ether_megapoli/trunk/web/src/ApplicationResources.properties	(revision 306)
@@ -35,4 +35,16 @@
 app.version=Version
 
+app.credits=Cr\u00E9dits
+app.mentions=Mentions l\u00E9gales
+app.infos=Informations
+app.backoffice=Backoffice
+app.backoffice.help=Acc\u00E8s au backoffice
+app.administrator=Administrateur
+app.coordinator=Coordinateur
+app.technician=Technicien
+app.measure.days=Jours de mesures
+inWork=Page en cours de construction..
+
+
 #contacts
 contact=Contactez nous
@@ -82,13 +94,4 @@
 data.intro0=Cette zone est r\u00E9serv\u00E9e aux participants du projet. 
 data.intro1=Vous pouvez demander l'ouverture d'un compte personnalis\u00E9 en envoyant un email au 
-data.authentification=Authentification
-data.authentification.intro=Veuillez vous identifier afin d'acc\u00E9der aux zones prot\u00E9g\u00E9es de ce site.
-data.authentification.login=Login
-data.authentification.password=Mot de passe
-data.authentification.sign=Connection
-data.authentification.loginForget=Oubli du login ?
-data.authentification.loginForget.help=Si vous vous souvenez de votre mot de passe, essayez de vous connecter avec votre email
-data.authentification.pwdForget=Oubli du mot de passe ?
-data.authentification.inscription=Nouvelle inscription
 
 data.upload=D\u00E9p\u00F4t de donn\u00E9es
@@ -375,11 +378,4 @@
 errors.init.failed=Echec \u00E0 l'initialisation de l'application \: vous ne pourrez pas d\u00E9poser de nouveaux fichiers de donn\u00E9es sur le serveur \!<br>
 
-errors.logon.failed=Echec de l\'op\u00E9ration d'authentification.<br> Veuillez contacter le <a href\='mailto\:{0}?subject\=[MEGAPOLI]'>webmaster</a> pour lui signaler le probl\u00E8me.<br>
-errors.logon.notFound=Ce login est inconnu.<br> Si vous voulez vous enregistrer pour obtenir l'acc\u00E8s aux zones prot\u00E9g\u00E9es du site, veuillez cliquez sur 'Nouvelle inscription'. <br>
-errors.logon.wrongPassword=Ce mot de passe est incorrect.
-errors.logon.login=Veuillez saisir votre login (normalement : votre mail).<br>
-errors.logon.password=Veuillez saisir votre mot de passe.<br>
-errors.logon.notAccepted=Vous n'\u00EAtes pas autoris\u00E9 \u00E0 acc\u00E9der aux zones prot\u00E9g\u00E9s.
-
 errors.upload.file=Vous devez s\u00E9lectionner un fichier\!<br>
 errors.upload.failed=Echec du d\u00E9p\u00F4t...<br>
@@ -434,85 +430,102 @@
 errors.access.failed.sel=Vous devez choisir au moins 1 param\u00E8tre ou 1 capteur ou 1 plate-forme ou 1 jeu de donn\u00E9es
 errors.access.novalues=Pas d'extraction possible
-errors.access.login=Vous n'\u00EAtes pas identifi\u00E9 ou vous avez perdu votre session, veuillez cliquer sur "Acc\u00E8s aux donn\u00E9es" pour vous identifier \u00E0 nouveau.
-
-
-
-################################################################
-####################### ETHER ##################################
-################################################################
-app.credits=Cr\u00E9dits
-app.mentions=Mentions l\u00E9gales
-app.infos=Informations
-app.dataProtocolAccept=Vous devez accepter le protocole d'utilisation des donn\u00E9es pour demander un compte
-app.dataProtocolFields=Les champs 'Nom', 'Email' et 'Mot de passe' sont incomplets
-app.dataProtocol.account=Votre compte est en attente de validation par l'administrateur. Vous recevrez un email lors de son activation.
-app.dataProtocol.alreadyExist=Cette email est d\u00E9j\u00E0 utilis\u00E9 par un compte, veuillez en fournir un autre.
-app.backoffice=Backoffice
-app.backoffice.help=Acc\u00E8s au backoffice
-app.administrator=Administrateur
-app.coordinator=Coordinateur
-app.technician=Technicien
-app.measure.days=Jours de mesures
-
-data.visualization.general.text=Dans cette zone, vous pouvez visualiser en ligne les donn\u00E9es disponibles. Plusieurs types de visualisations vous sont propos\u00E9s :<ul><li>un param\u00E8tre pour un site</li><li>un param\u00E8tre pour plusieurs sites</li><li>diff\u00E9rents param\u00E8tre pour un site</li><li>des visualisations en 2D</li></ul>
-data.visualization.general.text2=Vous pouvez visualiser au maximum deux types de param\u00E8tres diff\u00E9rents sur autant de plateformes disponibles.
-data.visualization.general.example=Exemples de s\u00E9ries temporelles :
-data.visualization.general.example.param.site=Ozone au LHVP
-data.visualization.general.example.param.sites=Ozone au LHVP et au SIRTA
-data.visualization.general.example.params.site=Ozone et Temp\u00E9rature au SIRTA
-data.visualization.general.example.params.sites=Ozone (LHVP et SIRTA) <BR/> Temp\u00E9rature (SIRTA)
-data.visualization.general.example.2D=Exemple de visualisation 2D :
-data.visualization.general.example.2D.ATR42=Mesures \u00E0 bord de l'ATR-42
-
-####################### VISUALIZATION #######################
-inWork=Page en cours de construction..
-all.visualization=Visualisation
-all.visualization.cap=VISUALISATION
-data.visualization.add=Ajouter
+
+
+################################################################
+####################### LOGIN ##################################
+################################################################
+login.authentification=Authentification
+login.intro=Veuillez vous identifier afin d'acc\u00E9der aux zones prot\u00E9g\u00E9es de ce site.
+login=Login
+login.password=Mot de passe
+login.sign=Connection
+login.loginForget=Oubli du login ?
+login.loginForget.help=Si vous vous souvenez de votre mot de passe, essayez de vous connecter avec votre email
+login.pwdForget=Oubli du mot de passe ?
+login.inscription=Nouvelle inscription
+login.text=Veuillez vous identifier afin d'acc\u00E9der aux zones prot\u00E9g\u00E9es de ce site.
+
+login.dataProtocolAccept=Vous devez accepter le protocole d'utilisation des donn\u00E9es pour demander un compte
+login.dataProtocolFields=Les champs 'Nom', 'Email' et 'Mot de passe' sont incomplets
+login.dataProtocol.account=Votre compte est en attente de validation par l'administrateur. Vous recevrez un email lors de son activation.
+login.dataProtocol.alreadyExist=Cette email est d\u00E9j\u00E0 utilis\u00E9 par un compte, veuillez en fournir un autre.
+
+login.error.notAccepted=Vous n'\u00EAtes pas autoris\u00E9 \u00E0 acc\u00E9der aux zones prot\u00E9g\u00E9s.
+login.error.bo.notAccepted=Vous n'\u00EAtes pas autoris\u00E9 \u00E0 acc\u00E9der au backoffice.
+login.error.notFound=Ce login est inconnu.<br> Si vous voulez vous enregistrer pour obtenir l'acc\u00E8s aux zones prot\u00E9g\u00E9es du site, veuillez cliquez sur 'Nouvelle inscription'. <br>
+login.error.wrongPassword=Ce mot de passe est incorrect.
+login.error.failed=Echec de l\'op\u00E9ration d'authentification.<br> Veuillez contacter le <a href\='mailto\:{0}?subject\=[MEGAPOLI]'>webmaster</a> pour lui signaler le probl\u00E8me.<br>
+login.error.unknown=Vous n'\u00EAtes pas identifi\u00E9 ou vous avez perdu votre session, veuillez vous connecter.
+
+# TODO : remove theses 2 lignes after remove InitLogonAccess...
+login.error.login=Veuillez saisir votre login (normalement : votre mail).<br>
+login.error.password=Veuillez saisir votre mot de passe.<br>
+
+################################################################
+##################### VISUALIZATION ############################
+################################################################
+
+visualization.general.text=Dans cette zone, vous pouvez visualiser en ligne les donn\u00E9es disponibles. Plusieurs types de visualisations vous sont propos\u00E9s :<ul><li>un param\u00E8tre pour un site</li><li>un param\u00E8tre pour plusieurs sites</li><li>diff\u00E9rents param\u00E8tre pour un site</li><li>des visualisations en 2D</li></ul>
+visualization.general.text2=Vous pouvez visualiser au maximum deux types de param\u00E8tres diff\u00E9rents sur autant de plateformes disponibles.
+visualization.general.example=Exemples de s\u00E9ries temporelles :
+visualization.general.example.param.site=Ozone au LHVP
+visualization.general.example.param.sites=Ozone au LHVP et au SIRTA
+visualization.general.example.params.site=Ozone et Temp\u00E9rature au SIRTA
+visualization.general.example.params.sites=Ozone (LHVP et SIRTA) <BR/> Temp\u00E9rature (SIRTA)
+visualization.general.example.2D=Exemple de visualisation 2D :
+visualization.general.example.2D.ATR42=Mesures \u00E0 bord de l'ATR-42
+
+visualization=Visualisation
+visualization.cap=VISUALISATION
+visualization.add=Ajouter
 
 data.visualization=Des donn\u00E9es
-data.visualization.2D=2D
-data.visualization.title=Visualisation des observations
-data.visualization.noPlateform=Pas de plateforme
-data.visualization.selectPf=Plateformes
-data.visualization.noParameter=Pas de param\u00E8tre
-data.visualization.selectParameter=Param\u00E8tres
-data.visualization.selectPeriod=P\u00E9riode
-data.visualization.selectDate=Choisissez une date
-data.visualization.selectYear=Ann\u00E9e
-data.visualization.selectMonth=Mois
-data.visualization.selectDay=Jour
-data.visualization.selectTime=Choisissez un temps
-data.visualization.selectHour=Heure
-data.visualization.selectMinute=Minute
-data.visualization.BeginDate=Date de d\u00E9but :
-data.visualization.EndDate=Date de fin :
-data.visualization.Unvalid_Period=P\u00E9riode non valide !
-data.visualization.titleChoice=Titre (modifiable)
-data.visualization.type=Type de trac\u00E9
-data.visualization.graph=Quicklook final :
-data.visualization.graph.noPlot=Aucun quicklook
-data.visualization.button.clear=Effacer
-data.visualization.button.init=Initialiser
-data.visualization.button.visualize=Visualisation
-data.visualization.button.download=T\u00E9l\u00E9chargement
-data.visualization.button.download.info=(fichier .tgz)
-data.visualization.loading.data=Chargement des donn\u00E9es
-data.visualization.quicklook=Quicklook
-data.visualization.parameter=param\u00E8tre(s)
-data.visualization.parameter.buttons.help=Aide
-data.visualization.parameter.buttons.help.text=En cliquant sur 'Ajouter', vous int\u00E9grez le param\u00E8tre s\u00E9lectionn\u00E9 au quicklook final. Pour une s\u00E8rie temporelle, vous pouvez visualiser jusqu'\u00E0 deux types de param\u00E9tres diff\u00E8rents sur autant de plateformes souhait\u00E8es.Pour un 2D par contre, un seul param\u00E9tre est visualisable.<BR><BR>Le bouton 'Initialiser' vide la liste des param\u00E8tres.
-
-data.visualization.axeType.TimeLine=S\u00E9rie temporelle (ligne)
-data.visualization.axeType.TimePoints=S\u00E9rie temporelle (points)
-data.visualization.axeType.2DContour=2D (contour)
-data.visualization.axeType.2DPoints=2D (points)
-data.authentification.text=Veuillez vous identifier afin d'acc\u00E9der aux zones prot\u00E9g\u00E9es de ce site.
+visualization.2D=2D
+visualization.title=Visualisation des observations
+visualization.noPlateform=Pas de plateforme
+visualization.selectPf=Plateformes
+visualization.noParameter=Pas de param\u00E8tre
+visualization.selectParameter=Param\u00E8tres
+visualization.selectPeriod=P\u00E9riode
+visualization.selectDate=Choisissez une date
+visualization.selectYear=Ann\u00E9e
+visualization.selectMonth=Mois
+visualization.selectDay=Jour
+visualization.selectTime=Choisissez un temps
+visualization.selectHour=Heure
+visualization.selectMinute=Minute
+visualization.BeginDate=Date de d\u00E9but :
+visualization.EndDate=Date de fin :
+visualization.Unvalid_Period=P\u00E9riode non valide !
+visualization.titleChoice=Titre (modifiable)
+visualization.type=Type de trac\u00E9
+visualization.graph=Quicklook final :
+visualization.graph.noPlot=Aucun quicklook
+visualization.button.clear=Effacer
+visualization.button.init=Initialiser
+visualization.button.visualize=Visualisation
+visualization.button.download=T\u00E9l\u00E9chargement
+visualization.button.download.info=(fichier .tgz)
+visualization.loading.data=Chargement des donn\u00E9es
+visualization.quicklook=Quicklook
+visualization.parameter=param\u00E8tre(s)
+visualization.parameter.buttons.help=Aide
+visualization.parameter.buttons.help.text=En cliquant sur 'Ajouter', vous int\u00E9grez le param\u00E8tre s\u00E9lectionn\u00E9 au quicklook final. Pour une s\u00E8rie temporelle, vous pouvez visualiser jusqu'\u00E0 deux types de param\u00E9tres diff\u00E8rents sur autant de plateformes souhait\u00E8es.Pour un 2D par contre, un seul param\u00E9tre est visualisable.<BR><BR>Le bouton 'Initialiser' vide la liste des param\u00E8tres.
+
+visualization.axeType.TimeLine=S\u00E9rie temporelle (ligne)
+visualization.axeType.TimePoints=S\u00E9rie temporelle (points)
+visualization.axeType.2DContour=2D (contour)
+visualization.axeType.2DPoints=2D (points)
 data.access.extract.process.short=L'extraction des donn\u00E9es est en cours...<br/>Vous allez recevoir un e-mail pour r\u00E9cup\u00E9rer le(s) fichier(s) g\u00E9n\u00E9r\u00E9s.
 data.access.extract.process.error=Erreur de t\u00E9l\u00E9chargement. <BR>Veuillez essayer de corriger les erreurs suivantes ou contacter l'administrateur en indiquant les erreurs rencontr\u00E9es.
 
+################################################################
+###################### SIMULATION ##############################
+################################################################
 simulation.visualization=Simulations
 
-####################### PLOT #######################
+################################################################
+######################## PLOT ##################################
+################################################################
 plot.published=Publi\u00E9 le
 plot.dataNumber=Nombre de donn\u00E9es extraites :
Index: /ether_megapoli/trunk/web/src/ApplicationResources_en.properties
===================================================================
--- /ether_megapoli/trunk/web/src/ApplicationResources_en.properties	(revision 305)
+++ /ether_megapoli/trunk/web/src/ApplicationResources_en.properties	(revision 306)
@@ -35,4 +35,17 @@
 app.version=Version
 
+app.credits=Credits
+app.mentions=Legals
+app.infos=Informations
+app.backoffice=Backoffice
+app.backoffice.help=Access to the backoffice
+app.administrator=Administrator
+app.coordinator=Coordinator
+app.technician=Technician
+app.measure.days=Measures days
+
+inWork=Work in progress..
+
+
 #contacts
 contact=Contact us
@@ -82,13 +95,4 @@
 data.intro0=This area is accessible for Megapoli project members only. 
 data.intro1=You can ask for a login account by sending an email to the 
-data.authentification=Authentification
-data.authentification.intro=Please login to access the protected areas of this website.
-data.authentification.login=Login
-data.authentification.password=Password
-data.authentification.sign=Sign in
-data.authentification.loginForget=Forgot your username ?
-data.authentification.loginForget.help=If you remember your password, try logging in with your email
-data.authentification.pwdForget=Forgot your password ?
-data.authentification.inscription=New inscription
 
 data.upload=Data upload
@@ -375,11 +379,4 @@
 errors.init.failed=The application initiation failed: you won't be able to upload new data to the server!<br>
 
-errors.logon.failed=The logon transaction failed. Please contact the <a href\='mailto\:{0}?subject\=[MEGAPOLI]'>webmaster</a> to report this problem.<br>
-errors.logon.notFound=Unknown login.<br> To register and access the protected areas of this site, please click on 'New inscription'.<br>
-errors.logon.wrongPassword=Wrong password.
-errors.logon.login=Please type your login (should be your email).<br>
-errors.logon.password=Please type your password.<br>
-errors.logon.notAccepted=You are not allowed to access to protected areas.
-
 errors.upload.file=You must select a file!<br>
 errors.upload.failed=The upload failed...<br>
@@ -434,87 +431,102 @@
 errors.access.failed.sel=You must select at least 1 parameter or 1 sensor or 1 platform or 1 data set
 errors.access.novalues=No download possible
-errors.access.login=You lost your session, please click on "Data access" to enter again your login and your password.
-
-
-################################################################
-####################### ETHER ##################################
-################################################################
-app.credits=Credits
-app.mentions=Legals
-app.infos=Informations
-app.dataProtocolAccept=You have to accept the data protocol to ask for an account
-app.dataProtocolFields=Fields 'LastName', 'Email' and 'Password' must be filled
-app.dataProtocol.account=Your account is waiting for administrator validation. You will receive an email when it will be activated.
-app.dataProtocol.alreadyExist=This email is already used, you have to give another one
-app.unknown.login=Unknown login
-app.access.not.allowed=You are not authorized to access to backoffice
-app.backoffice=Backoffice
-app.backoffice.help=Access to the backoffice
-app.administrator=Administrator
-app.coordinator=Coordinator
-app.technician=Technician
-app.measure.days=Measures days
-
-data.visualization.general.text=In this area you can visualize available data with the following types of visualization : <ul><li>one parameter by plateform</li><li>one parameter by many plateforms</li><li>differents parameters by plateform</li><li>2D visualizations</li></ul>
-data.visualization.general.text2=You can visualize up two differents parameters at the same time for many plateforms
-data.visualization.general.example=Examples of time series :
-data.visualization.general.example.param.site=Ozone at the LHVP
-data.visualization.general.example.param.sites=Ozone at the LHVP and the SIRTA
-data.visualization.general.example.params.site=Ozone and Temperature at the SIRTA
-data.visualization.general.example.params.sites=Ozone (at the LHVP and SIRTA) and Temperature (at the SIRTA)
-data.visualization.general.example.2D=Example of 2D :
-data.visualization.general.example.2D.ATR42=Measurements on ATR-42 board
-
-####################### VISUALIZATION #######################
-inWork=Work in progress..
-all.visualization=Visualization
-all.visualization.cap=VISUALIZATION
-data.visualization.add=Add
+
+################################################################
+####################### LOGIN ##################################
+################################################################
+login.authentification=Authentification
+login.intro=Please login to access the protected areas of this website.
+login=Login
+login.password=Password
+login.sign=Sign in
+login.loginForget=Forgot your username ?
+login.loginForget.help=If you remember your password, try logging in with your email
+login.pwdForget=Forgot your password ?
+login.inscription=New inscription
+login.text=Please login to access the protected areas of this website.
+
+login.dataProtocolAccept=You have to accept the data protocol to ask for an account
+login.dataProtocolFields=Fields 'LastName', 'Email' and 'Password' must be filled
+login.dataProtocol.account=Your account is waiting for administrator validation. You will receive an email when it will be activated.
+login.dataProtocol.alreadyExist=This email is already used, you have to give another one
+
+login.error.notAccepted=You are not allowed to access to protected areas.
+login.error.bo.notAccepted=You are not authorized to access to backoffice.
+login.error.notFound=Unknown login.<br> To register and access the protected areas of this site, please click on 'New inscription'.<br>
+login.error.wrongPassword=Wrong password.
+login.error.failed=The logon transaction failed. Please contact the <a href\='mailto\:{0}?subject\=[MEGAPOLI]'>webmaster</a> to report this problem.<br>
+login.error.unknown=You are not authentified or you lost your session, please register.
+
+# TODO : remove theses 2 lignes after remove InitLogonAccess...
+login.error.login=Please type your login (should be your email).<br>
+login.error.password=Please type your password.<br>
+
+################################################################
+##################### VISUALIZATION ############################
+################################################################
+
+visualization.general.text=In this area you can visualize available data with the following types of visualization : <ul><li>one parameter by plateform</li><li>one parameter by many plateforms</li><li>differents parameters by plateform</li><li>2D visualizations</li></ul>
+visualization.general.text2=You can visualize up two differents parameters at the same time for many plateforms
+visualization.general.example=Examples of time series :
+visualization.general.example.param.site=Ozone at the LHVP
+visualization.general.example.param.sites=Ozone at the LHVP and the SIRTA
+visualization.general.example.params.site=Ozone and Temperature at the SIRTA
+visualization.general.example.params.sites=Ozone (at the LHVP and SIRTA) and Temperature (at the SIRTA)
+visualization.general.example.2D=Example of 2D :
+visualization.general.example.2D.ATR42=Measurements on ATR-42 board
+
+visualization=Visualization
+visualization.cap=VISUALIZATION
+visualization.add=Add
 
 data.visualization=Data
-data.visualization.2D=2D
-data.visualization.title=Observations visualisation
-data.visualization.noPlateform=No plateform
-data.visualization.selectPf=Plateforms
-data.visualization.noParameter=No parameter
-data.visualization.selectParameter=Parameters
-data.visualization.selectPeriod=Period
-data.visualization.selectDate=Select a date
-data.visualization.selectYear=Year
-data.visualization.selectMonth=Month
-data.visualization.selectDay=Day
-data.visualization.selectTime=Select a time
-data.visualization.selectHour=Hour
-data.visualization.selectMinute=Minute
-data.visualization.BeginDate=Start date :
-data.visualization.EndDate=End date :
-data.visualization.Unvalid_Period=Unvalid periode !
-data.visualization.titleChoice=Title (modifiable)
-data.visualization.type=Plot's type
-data.visualization.graph=Final quicklook :
-data.visualization.graph.noPlot=No quicklook
-data.visualization.button.clear=Clear
-data.visualization.button.init=Init
-data.visualization.button.visualize=Visualization
-data.visualization.button.download=Download
-data.visualization.button.download.info=(file .tgz)
-data.visualization.loading.data=Data downloading
-data.visualization.quicklook=Quicklook
-data.visualization.parameter=parameter(s)
-data.visualization.parameter.buttons.help=Help
-data.visualization.parameter.buttons.help.text=By clicking on 'Add' you add the selected parameter to the final quicklook. For a time serie you can visualize up to two differents parameters at the same time for many plateforms.For a 2D only one parameter is available.<BR><BR>The button 'Init' remove the parameters from the list.
-
-data.visualization.axeType.TimeLine=Time serie (line)
-data.visualization.axeType.TimePoints=Time serie (dots)
-data.visualization.axeType.2DContour=2D (contour)
-data.visualization.axeType.2DPoints=2D (dots)
-
-data.authentification.text=Please login to access the protected areas of this website.
+visualization.2D=2D
+visualization.title=Observations visualisation
+visualization.noPlateform=No plateform
+visualization.selectPf=Plateforms
+visualization.noParameter=No parameter
+visualization.selectParameter=Parameters
+visualization.selectPeriod=Period
+visualization.selectDate=Select a date
+visualization.selectYear=Year
+visualization.selectMonth=Month
+visualization.selectDay=Day
+visualization.selectTime=Select a time
+visualization.selectHour=Hour
+visualization.selectMinute=Minute
+visualization.BeginDate=Start date :
+visualization.EndDate=End date :
+visualization.Unvalid_Period=Unvalid periode !
+visualization.titleChoice=Title (modifiable)
+visualization.type=Plot's type
+visualization.graph=Final quicklook :
+visualization.graph.noPlot=No quicklook
+visualization.button.clear=Clear
+visualization.button.init=Init
+visualization.button.visualize=Visualization
+visualization.button.download=Download
+visualization.button.download.info=(file .tgz)
+visualization.loading.data=Data downloading
+visualization.quicklook=Quicklook
+visualization.parameter=parameter(s)
+visualization.parameter.buttons.help=Help
+visualization.parameter.buttons.help.text=By clicking on 'Add' you add the selected parameter to the final quicklook. For a time serie you can visualize up to two differents parameters at the same time for many plateforms.For a 2D only one parameter is available.<BR><BR>The button 'Init' remove the parameters from the list.
+
+visualization.axeType.TimeLine=Time serie (line)
+visualization.axeType.TimePoints=Time serie (dots)
+visualization.axeType.2DContour=2D (contour)
+visualization.axeType.2DPoints=2D (dots)
+
 data.access.extract.process.short=The downloading is in progress. You will receive an e-mail to get back the generated data file(s).
 data.access.extract.process.error=Download error. <BR>Please try to correct the following errors or contact the administrator with the detected errors.
 
+################################################################
+###################### SIMULATION ##############################
+################################################################
 simulation.visualization=Simulations
 
-####################### PLOT #######################
+################################################################
+######################## PLOT ##################################
+################################################################
 plot.published=Published
 plot.dataNumber=Number of extracted datas :
@@ -526,5 +538,7 @@
 
 
-####################### BACKOFFICE #######################
+################################################################
+##################### BACKOFFICE ###############################
+################################################################
 bo.fulltitle=MEGAPOLI Backoffice
 bo.site=Megapoli
Index: /ether_megapoli/trunk/web/src/com/ether/ControllerEponge.java
===================================================================
--- /ether_megapoli/trunk/web/src/com/ether/ControllerEponge.java	(revision 305)
+++ /ether_megapoli/trunk/web/src/com/ether/ControllerEponge.java	(revision 306)
@@ -67,9 +67,9 @@
                 final String encryptedPassword = EtherHelper.encryptPassword( password );
                 if( user == null )
-                    result.put( "errors", "errors.logon.notFound" );
+                    result.put( "errors", "login.error.notFound" );
                 else if( !encryptedPassword.equals( user.getPassword() ) )
-                    result.put( "errors", "errors.logon.wrongPassword" );
+                    result.put( "errors", "login.error.wrongPassword" );
                 else if( !UserState.ACCEPTED.equals( user.getState() ) )
-                    result.put( "errors", "errors.logon.notAccepted" );
+                    result.put( "errors", "login.error.notAccepted" );
                 else
                 {
@@ -95,5 +95,5 @@
             catch( Exception e )
             {
-                result.put( "errors", "errors.logon.failed" );
+                result.put( "errors", "login.error.failed" );
             }
         }
Index: /ether_megapoli/trunk/web/src/com/ether/ControllerEther.java
===================================================================
--- /ether_megapoli/trunk/web/src/com/ether/ControllerEther.java	(revision 305)
+++ /ether_megapoli/trunk/web/src/com/ether/ControllerEther.java	(revision 306)
@@ -90,14 +90,15 @@
             final Object[] params = buildParams( methodDescription, request );
 
-            // TODO : super crados !! A REVOIR !!!
-            if( methodDescription.isLoginMandatory() )
-            {
-                final User user = (User) request.getSession().getAttribute( "SES_USER" );
-                params[params.length - 1] = user;
-            }
-
-            // TODO : super crados !! A REVOIR !!!
+            // TODO : boarf, trouver meilleur moyen pour passer la requÃªte
             if( methodDescription.isRequestMandatory() )
                 params[params.length - 1] = request;
+
+            if( methodDescription.isLoginMandatory() )
+            {
+                final String defaultView = null != methodDescription.getDefaultView() ? methodDescription.getDefaultView() : methodDescription.getView();
+                final Personne people = (Personne) request.getSession().getAttribute( "SES_USER" );
+                if( null == people )
+                    return new ModelAndView( defaultView, "errors", "login.error.unknown" );
+            }
 
             if( methodDescription.isBackofficeMethod() )
@@ -109,9 +110,9 @@
                 if( null == user )
                 {
-                    return new ModelAndView( defaultView, "errors", "app.unknown.login" );
+                    return new ModelAndView( defaultView, "errors", "login.error.unknown" );
                 }
                 else if( null != user && !user.isAccessToBO() )
                 {
-                    return new ModelAndView( defaultView, "errors", "app.access.not.allowed" );
+                    return new ModelAndView( defaultView, "errors", "login.error.bo.notAccepted" );
                 }
             }
Index: /ether_megapoli/trunk/web/src/com/ether/ControllerVisualization.java
===================================================================
--- /ether_megapoli/trunk/web/src/com/ether/ControllerVisualization.java	(revision 305)
+++ /ether_megapoli/trunk/web/src/com/ether/ControllerVisualization.java	(revision 306)
@@ -48,5 +48,5 @@
             throws ServiceException
     {
-        return new ModelAndView( "index" );
+        return new ModelAndView( VIEW_ERRORS );
     }
 
@@ -97,12 +97,13 @@
     }
 
-    @ControllerMethod(jsonResult = true, loginMandatory = true)
+    @ControllerMethod(jsonResult = true, requestMandatory = true, loginMandatory = true, defaultView = VIEW_ERRORS)
     public JSONObject downloadData( @ParamName(ParameterConstants.PARAMETER_DATE_BEGIN) final String dateBegin,
                                     @ParamName(ParameterConstants.PARAMETER_DATE_END) final String dateEnd,
                                     @ParamName(ParameterConstants.PARAMETER_PFID_PID_LIST) final String pIdPIdArrayString,
-                                    @NotNull final Personne personne )
+                                    @NotNull final HttpServletRequest request )
             throws ServiceException, WebException
     {
         final JSONObject result = new JSONObject();
+        final Personne person = (Personne) request.getSession().getAttribute( "SES_USER" );
 
         final List<Pair<String, String>> pfIdPIdList = EtherHelper.extractpfIdPIdListFromString( pIdPIdArrayString, String.class, String.class );
@@ -113,5 +114,5 @@
 
         final XMLOutputter outXml = new XMLOutputter();
-        final Document docXml = Requete.toXml( dataForm, personne );
+        final Document docXml = Requete.toXml( dataForm, person );
         final String requete = outXml.outputString( docXml );
         try
@@ -248,4 +249,5 @@
     private static final Log LOGGER = LogFactory.getLog( ControllerVisualization.class );
 
+    private static final String VIEW_ERRORS = "project/errors";
     private static final String VIEW_WORK = "visualization/inWork";
     private static final String VIEW_VISUALIZATION = "visualization/visu";
Index: /ether_megapoli/trunk/web/visualization/visu.jsp
===================================================================
--- /ether_megapoli/trunk/web/visualization/visu.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/visualization/visu.jsp	(revision 306)
@@ -18,36 +18,36 @@
 
 
-    <tiles:put name="title" type="string"><bean:message key="app.title"/> - <bean:message key="all.visualization"/></tiles:put>
+    <tiles:put name="title" type="string"><bean:message key="app.title"/> - <bean:message key="visualization"/></tiles:put>
     <tiles:put name="nav" type="string">
         <html:link page="/index.jsp"><bean:message key="app.home"/></html:link>&nbsp;&gt;
-        <html:link page="/visualization?methodName=view"><bean:message key="all.visualization"/></html:link>
+        <html:link page="/visualization?methodName=view"><bean:message key="visualization"/></html:link>
     </tiles:put>
 
 
     <%--****************** CONTENT ****************** --%>
-    <tiles:put name="bodytitle" type="string"><bean:message key="all.visualization.cap"/></tiles:put>
+    <tiles:put name="bodytitle" type="string"><bean:message key="visualization.cap"/></tiles:put>
 
     <tiles:put name="body" type="string">
         <div class="textExamples">
-            <bean:message key="data.visualization.general.text"/>
-            <bean:message key="data.visualization.general.text2"/>
+            <bean:message key="visualization.general.text"/>
+            <bean:message key="visualization.general.text2"/>
         </div>
 
         <BR/>
 
-        <div class="textExamples"><bean:message key="data.visualization.general.example"/></div>
+        <div class="textExamples"><bean:message key="visualization.general.example"/></div>
         <table class="roundTable" border="1">
             <tr>
                 <td width="25%">
-                    <div class="textExamplesTD"><bean:message key="data.visualization.general.example.param.site"/></div>
+                    <div class="textExamplesTD"><bean:message key="visualization.general.example.param.site"/></div>
                 </td>
                 <td width="25%">
-                    <div class="textExamplesTD"><bean:message key="data.visualization.general.example.param.sites"/></div>
+                    <div class="textExamplesTD"><bean:message key="visualization.general.example.param.sites"/></div>
                 </td>
                 <td width="25%">
-                    <div class="textExamplesTD"><bean:message key="data.visualization.general.example.params.site"/></div>
+                    <div class="textExamplesTD"><bean:message key="visualization.general.example.params.site"/></div>
                 </td>
                 <td width="25%">
-                    <div class="textExamplesTD"><bean:message key="data.visualization.general.example.params.sites"/></div>
+                    <div class="textExamplesTD"><bean:message key="visualization.general.example.params.sites"/></div>
                 </td>
             </tr>
@@ -56,5 +56,5 @@
                 <td>
                     <center>
-                        <a href="/megapoli/resources/images/CaptureOzone.png" rel="lightbox" title="<bean:message key="data.visualization.general.example.param.site"/>">
+                        <a href="/megapoli/resources/images/CaptureOzone.png" rel="lightbox" title="<bean:message key="visualization.general.example.param.site"/>">
                             <img src="/megapoli/resources/images/CaptureOzone.png" height="150px" width="150px" class="imageExamples">
                         </a>
@@ -63,5 +63,5 @@
                 <td>
                     <center>
-                        <a href="/megapoli/resources/images/Capture2Ozones.png" rel="lightbox" title="<bean:message key="data.visualization.general.example.param.sites"/>">
+                        <a href="/megapoli/resources/images/Capture2Ozones.png" rel="lightbox" title="<bean:message key="visualization.general.example.param.sites"/>">
                             <img src="/megapoli/resources/images/Capture2Ozones.png" height="150px" width="150px" class="imageExamples">
                         </a>
@@ -70,5 +70,5 @@
                 <td>
                     <center>
-                        <a href="/megapoli/resources/images/Capture1Ozone1TempPoints.png" rel="lightbox" title="<bean:message key="data.visualization.general.example.params.site"/>">
+                        <a href="/megapoli/resources/images/Capture1Ozone1TempPoints.png" rel="lightbox" title="<bean:message key="visualization.general.example.params.site"/>">
                             <img src="/megapoli/resources/images/Capture1Ozone1TempPoints.png" height="150px" width="150px" class="imageExamples">
                         </a>
@@ -77,5 +77,5 @@
                 <td>
                     <center>
-                        <a href="/megapoli/resources/images/Capture2Ozones1Temp.png" rel="lightbox" title="<bean:message key="data.visualization.general.example.params.sites"/>">
+                        <a href="/megapoli/resources/images/Capture2Ozones1Temp.png" rel="lightbox" title="<bean:message key="visualization.general.example.params.sites"/>">
                             <img src="/megapoli/resources/images/Capture2Ozones1Temp.png" height="150px" width="150px" class="imageExamples">
                         </a>
@@ -87,10 +87,10 @@
         <BR/>
 
-        <div class="textExamples"><bean:message key="data.visualization.general.example.2D"/></div>
+        <div class="textExamples"><bean:message key="visualization.general.example.2D"/></div>
         <table class="smallRoundTable" border="1">
             <tr>
                 <td>
                     <center>
-                        <a href="/megapoli/resources/images/Capture2D.png" rel="lightbox" title="<bean:message key="data.visualization.general.example.2D.ATR42"/>">
+                        <a href="/megapoli/resources/images/Capture2D.png" rel="lightbox" title="<bean:message key="visualization.general.example.2D.ATR42"/>">
                             <img src="/megapoli/resources/images/Capture2D.png" height="150px" width="150px" class="imageExamples">
                         </a>
Index: /ether_megapoli/trunk/web/visualization/visu_parameter_by_pf-script.jsp
===================================================================
--- /ether_megapoli/trunk/web/visualization/visu_parameter_by_pf-script.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/visualization/visu_parameter_by_pf-script.jsp	(revision 306)
@@ -60,12 +60,12 @@
 
         AnyTime.picker( "beginDate", { format: this.calendarFormat, firstDOW: 1,
-            labelTitle: interfaceTexts["data.visualization.selectDate"], labelYear: interfaceTexts["data.visualization.selectYear"], labelMonth: interfaceTexts["data.visualization.selectMonth"], labelDayOfMonth: interfaceTexts["data.visualization.selectDay"],
-            labelHour: interfaceTexts["data.visualization.selectHour"], labelMinute: interfaceTexts["data.visualization.selectMinute"],
+            labelTitle: interfaceTexts["visualization.selectDate"], labelYear: interfaceTexts["visualization.selectYear"], labelMonth: interfaceTexts["visualization.selectMonth"], labelDayOfMonth: interfaceTexts["visualization.selectDay"],
+            labelHour: interfaceTexts["visualization.selectHour"], labelMinute: interfaceTexts["visualization.selectMinute"],
             methodToCall: jQuery.proxy( this.onClickBeginDate, this )
         } );
 
         AnyTime.picker( "endDate", { format: this.calendarFormat, firstDOW: 1,
-            labelTitle: interfaceTexts["data.visualization.selectDate"], labelYear: interfaceTexts["data.visualization.selectYear"], labelMonth: interfaceTexts["data.visualization.selectMonth"], labelDayOfMonth: interfaceTexts["data.visualization.selectDay"],
-            labelHour: interfaceTexts["data.visualization.selectHour"], labelMinute: interfaceTexts["data.visualization.selectMinute"],
+            labelTitle: interfaceTexts["visualization.selectDate"], labelYear: interfaceTexts["visualization.selectYear"], labelMonth: interfaceTexts["visualization.selectMonth"], labelDayOfMonth: interfaceTexts["visualization.selectDay"],
+            labelHour: interfaceTexts["visualization.selectHour"], labelMinute: interfaceTexts["visualization.selectMinute"],
             methodToCall: jQuery.proxy( this.onClickEndDate, this ),
             idToUpdateEarliest: "beginDate"
@@ -74,5 +74,5 @@
         $( "#beginDate" ).val( this.firstDate );
         $( "#endDate" ).val( this.lastDate );
-        this.clearCalendarButton = new Button( {value:interfaceTexts["data.visualization.button.clear"], parent:this.containerOptionCalendar, id:"button_clear_calendar", className:"small", onClick:jQuery.proxy( this.onClickClear, this )} );
+        this.clearCalendarButton = new Button( {value:interfaceTexts["visualization.button.clear"], parent:this.containerOptionCalendar, id:"button_clear_calendar", className:"small", onClick:jQuery.proxy( this.onClickClear, this )} );
 
         // Buttons and axe's types
@@ -84,7 +84,7 @@
     createButtons: function()
     {
-        this.visualizeButton = new Button( {value:interfaceTexts["data.visualization.button.visualize"], parent:this.containerButtons, id:"button_visualize", onClick:jQuery.proxy( this.onClickVisualize, this )} );
+        this.visualizeButton = new Button( {value:interfaceTexts["visualization.button.visualize"], parent:this.containerButtons, id:"button_visualize", onClick:jQuery.proxy( this.onClickVisualize, this )} );
         this.visualizeButton.disable();
-        this.downloadButton = new Button( {value:interfaceTexts["data.visualization.button.download"], parent:this.containerButtons, id:"button_download", onClick:jQuery.proxy( this.onClickDownload, this )} );
+        this.downloadButton = new Button( {value:interfaceTexts["visualization.button.download"], parent:this.containerButtons, id:"button_download", onClick:jQuery.proxy( this.onClickDownload, this )} );
         this.downloadButton.disable();
     },
@@ -106,12 +106,12 @@
         this.selectPlots = new Select( paramSelect );
         this.selectParameters = $();
-        this.selectPlots.add( null, interfaceTexts["data.visualization.graph.noPlot"] );
+        this.selectPlots.add( null, interfaceTexts["visualization.graph.noPlot"] );
         this.selectPlots.selectFirst( false );
 
         this.selectPlotsPlateformType = false;
 
-        this.addPlotButton = new Button( {value:interfaceTexts["data.visualization.add"], parent:this.containerOptionPlotsButtons, id:"button_add_plot", className:"small", onClick:jQuery.proxy( this.onClickAddPlot, this )} );
+        this.addPlotButton = new Button( {value:interfaceTexts["visualization.add"], parent:this.containerOptionPlotsButtons, id:"button_add_plot", className:"small", onClick:jQuery.proxy( this.onClickAddPlot, this )} );
         this.addPlotButton.disable();
-        this.initPlotButton = new Button( {value:interfaceTexts["data.visualization.button.init"], parent:this.containerOptionPlotsButtons, id:"button_init_plot", className:"small", onClick:jQuery.proxy( this.onClickInitPlot, this )} );
+        this.initPlotButton = new Button( {value:interfaceTexts["visualization.button.init"], parent:this.containerOptionPlotsButtons, id:"button_init_plot", className:"small", onClick:jQuery.proxy( this.onClickInitPlot, this )} );
     },
 
@@ -168,5 +168,5 @@
         this.plateforms.addOpenListener( jQuery.proxy( this.onSelectPlateform, this ) );
         this.loadingPlateforms.hide();
-        this.plateforms.display( this.containerPlateforms, "NoPlateform", interfaceTexts["data.visualization.noPlateform"] );
+        this.plateforms.display( this.containerPlateforms, "NoPlateform", interfaceTexts["visualization.noPlateform"] );
 
         // Select the first plateform by default
@@ -185,5 +185,5 @@
         this.parameters.addOpenListener( jQuery.proxy( this.onSelectParameter, this ) );
         this.loadingParameters.hide();
-        this.parameters.display( this.containerParameters, "NoParameter", interfaceTexts["data.visualization.noParameter"], "containerParameter" );
+        this.parameters.display( this.containerParameters, "NoParameter", interfaceTexts["visualization.noParameter"], "containerParameter" );
     },
 
@@ -304,5 +304,5 @@
                     .dialog( {
                                  autoOpen: false,
-                                 title: interfaceTexts["app.title"] + "-" + interfaceTexts["data.visualization.quicklook"],
+                                 title: interfaceTexts["app.title"] + "-" + interfaceTexts["visualization.quicklook"],
                                  minHeight: <%=EtherPlotServiceImpl.getMaxHeight()%>,
                                  minWidth: <%=EtherPlotServiceImpl.getMaxWidth()%> + 28
@@ -312,8 +312,8 @@
         {
             var $dialog = $( '<div></div>' )
-                    .html( '<BR/><center>' + interfaceTexts["data.visualization.graph.noPlot"] + '</center>' )
+                    .html( '<BR/><center>' + interfaceTexts["visualization.graph.noPlot"] + '</center>' )
                     .dialog( {
                                  autoOpen: false,
-                                 title: interfaceTexts["app.title"] + "-" + interfaceTexts["data.visualization.quicklook"],
+                                 title: interfaceTexts["app.title"] + "-" + interfaceTexts["visualization.quicklook"],
                                  height: 50,
                                  width: 400
@@ -328,5 +328,5 @@
         if( !getJSONUser() )
         // Method showLogin writen in megapoliHead.jsp
-            getLoginModule().showLogin( templateTexts["data.authentification.text"] );
+            getLoginModule().showLogin( templateTexts["login.text"] );
         else
             this.requestDownload();
@@ -385,9 +385,9 @@
 
                     this.numberParameterToDisplay = 1;
-                    $( "#messages_number_parameters" ).html( this.numberParameterToDisplay + " " + interfaceTexts["data.visualization.parameter"] );
+                    $( "#messages_number_parameters" ).html( this.numberParameterToDisplay + " " + interfaceTexts["visualization.parameter"] );
                 }
                 else
                 {
-                    this.selectPlots.add( null, interfaceTexts["data.visualization.graph.noPlot"] );
+                    this.selectPlots.add( null, interfaceTexts["visualization.graph.noPlot"] );
                     this.selectPlots.selectFirst( false );
 
@@ -407,5 +407,5 @@
 
                 this.selectPlots.changeSelectMiddle( this.selectedPlateform.getId() + "-" + this.selectedParameter.getId(), this.selectedPlateform.getName() + " - " + this.selectedParameter.getName() );
-                $( "#messages_number_parameters" ).html( this.numberParameterToDisplay + " " + interfaceTexts["data.visualization.parameter"] );
+                $( "#messages_number_parameters" ).html( this.numberParameterToDisplay + " " + interfaceTexts["visualization.parameter"] );
                 break;
 
@@ -425,5 +425,5 @@
                 }
 
-                $( "#messages_number_parameters" ).html( this.numberParameterToDisplay + " " + interfaceTexts["data.visualization.parameter"] );
+                $( "#messages_number_parameters" ).html( this.numberParameterToDisplay + " " + interfaceTexts["visualization.parameter"] );
                 break;
         }
@@ -462,6 +462,6 @@
 {
     var helpWindow = new Window( {className: "dialog", zIndex: 100, resizable: true, draggable:true, wiredDrag: true, showEffect:Effect.BlindDown, hideEffect: Effect.SwitchOff } );
-    helpWindow.setTitle( interfaceTexts["data.visualization.parameter.buttons.help"] );
-    helpWindow.getContent().innerHTML = '<div class="textExamplesTD">' + interfaceTexts["data.visualization.parameter.buttons.help.text"] + '</div>';
+    helpWindow.setTitle( interfaceTexts["visualization.parameter.buttons.help"] );
+    helpWindow.getContent().innerHTML = '<div class="textExamplesTD">' + interfaceTexts["visualization.parameter.buttons.help.text"] + '</div>';
     helpWindow.setSize( 350, 100 );
     helpWindow.show();
Index: /ether_megapoli/trunk/web/visualization/visu_parameter_by_pf.jsp
===================================================================
--- /ether_megapoli/trunk/web/visualization/visu_parameter_by_pf.jsp	(revision 305)
+++ /ether_megapoli/trunk/web/visualization/visu_parameter_by_pf.jsp	(revision 306)
@@ -27,19 +27,19 @@
     </tiles:put>
 
-    <tiles:put name="title" type="string"><bean:message key="app.title"/> - <bean:message key="data.visualization.title"/></tiles:put>
+    <tiles:put name="title" type="string"><bean:message key="app.title"/> - <bean:message key="visualization.title"/></tiles:put>
     <tiles:put name="nav" type="string">
         <html:link page="/index.jsp"><bean:message key="app.home"/></html:link>&nbsp;&gt;
-        <html:link page="/visualization?methodName=view"><bean:message key="all.visualization"/></html:link>&nbsp;&gt;
-        <html:link page="/visualization?methodName=viewParametersByPlateform"><bean:message key="data.visualization"/></html:link>
+        <html:link page="/visualization?methodName=view"><bean:message key="visualization"/></html:link>&nbsp;&gt;
+        <html:link page="/visualization?methodName=viewParametersByPlateform"><bean:message key="visualization"/></html:link>
     </tiles:put>
 
 
     <%--****************** CONTENT ****************** --%>
-    <tiles:put name="bodytitle" type="string"><bean:message key="data.visualization.title"/></tiles:put>
+    <tiles:put name="bodytitle" type="string"><bean:message key="visualization.title"/></tiles:put>
 
     <tiles:put name="body" type="string">
 
         <div id="generalContainerPlateforms" class="span-5 colborder">
-            <div id="messages"><bean:message key="data.visualization.selectPf"/></div>
+            <div id="messages"><bean:message key="visualization.selectPf"/></div>
 
             <div id="containerPlateforms"></div>
@@ -47,5 +47,5 @@
 
         <div id="generalContainerParameters" class="span-6 colborder">
-            <div id="messages"><bean:message key="data.visualization.selectParameter"/></div>
+            <div id="messages"><bean:message key="visualization.selectParameter"/></div>
 
             <div id="containerParameters"></div>
@@ -54,5 +54,5 @@
         <div id="generalContainerOptions" class="span-11 last">
             <div id="containerOptionCalendar" class="span-10">
-                <div id="messages" class="messagesHeight"><bean:message key="data.visualization.selectPeriod"/></div>
+                <div id="messages" class="messagesHeight"><bean:message key="visualization.selectPeriod"/></div>
                 <input type="text" id="beginDate" size="15"/>
                 <input type="text" id="endDate" size="15"/>
@@ -60,14 +60,14 @@
 
             <div id="containerOptionTitle" class="span-5">
-                <div id="messages" class="messagesHeight"><bean:message key="data.visualization.titleChoice"/></div>
+                <div id="messages" class="messagesHeight"><bean:message key="visualization.titleChoice"/></div>
                 <textarea id="textareaTitle" cols="25" rows="3"></textarea>
             </div>
 
             <div id="containerOptionType" class="span-5">
-                <div id="messages" class="messagesHeight"><bean:message key="data.visualization.type"/></div>
+                <div id="messages" class="messagesHeight"><bean:message key="visualization.type"/></div>
             </div>
 
             <div id="containerOptionPlots" class="span-10">
-                <div id="messages" class="messagesHeight span-4"><bean:message key="data.visualization.graph"/></div>
+                <div id="messages" class="messagesHeight span-4"><bean:message key="visualization.graph"/></div>
                 <div id="messages_number_parameters" class="messagesHeight messages_number_parameters"></div>
                 <div id="containerOptionPlotsSelect" class="span-10"></div>
@@ -85,33 +85,33 @@
             var interfaceTexts = $A( "" );
             interfaceTexts["app.title"] = '<bean:message key="app.title"/>';
-            interfaceTexts["data.visualization.noPlateform"] = '<bean:message key="data.visualization.noPlateform"/>';
-            interfaceTexts["data.visualization.noParameter"] = '<bean:message key="data.visualization.noParameter"/>';
-            interfaceTexts["data.visualization.button.visualize"] = '<bean:message key="data.visualization.button.visualize"/>';
-            interfaceTexts["data.visualization.button.download"] = '<bean:message key="data.visualization.button.download"/>';
-            interfaceTexts["data.visualization.loading.data"] = '<bean:message key="data.visualization.loading.data"/>';
-            interfaceTexts["data.visualization.Unvalid_Period"] = "<bean:message key="data.visualization.Unvalid_Period"/>";
-            interfaceTexts["data.visualization.quicklook"] = "<bean:message key="data.visualization.quicklook"/>";
-            interfaceTexts["data.visualization.button.today"] = "<bean:message key="data.visualization.button.today"/>";
-            interfaceTexts["data.visualization.button.clear"] = "<bean:message key="data.visualization.button.clear"/>";
+            interfaceTexts["visualization.noPlateform"] = '<bean:message key="visualization.noPlateform"/>';
+            interfaceTexts["visualization.noParameter"] = '<bean:message key="visualization.noParameter"/>';
+            interfaceTexts["visualization.button.visualize"] = '<bean:message key="visualization.button.visualize"/>';
+            interfaceTexts["visualization.button.download"] = '<bean:message key="visualization.button.download"/>';
+            interfaceTexts["visualization.loading.data"] = '<bean:message key="visualization.loading.data"/>';
+            interfaceTexts["visualization.Unvalid_Period"] = "<bean:message key="visualization.Unvalid_Period"/>";
+            interfaceTexts["visualization.quicklook"] = "<bean:message key="visualization.quicklook"/>";
+            interfaceTexts["visualization.button.today"] = "<bean:message key="visualization.button.today"/>";
+            interfaceTexts["visualization.button.clear"] = "<bean:message key="visualization.button.clear"/>";
 
-            interfaceTexts["data.visualization.selectDate"] = "<bean:message key="data.visualization.selectDate"/>";
-            interfaceTexts["data.visualization.selectYear"] = "<bean:message key="data.visualization.selectYear"/>";
-            interfaceTexts["data.visualization.selectMonth"] = "<bean:message key="data.visualization.selectMonth"/>";
-            interfaceTexts["data.visualization.selectDay"] = "<bean:message key="data.visualization.selectDay"/>";
-            interfaceTexts["data.visualization.selectTime"] = "<bean:message key="data.visualization.selectTime"/>";
-            interfaceTexts["data.visualization.selectHour"] = "<bean:message key="data.visualization.selectHour"/>";
-            interfaceTexts["data.visualization.selectMinute"] = "<bean:message key="data.visualization.selectMinute"/>";
+            interfaceTexts["visualization.selectDate"] = "<bean:message key="visualization.selectDate"/>";
+            interfaceTexts["visualization.selectYear"] = "<bean:message key="visualization.selectYear"/>";
+            interfaceTexts["visualization.selectMonth"] = "<bean:message key="visualization.selectMonth"/>";
+            interfaceTexts["visualization.selectDay"] = "<bean:message key="visualization.selectDay"/>";
+            interfaceTexts["visualization.selectTime"] = "<bean:message key="visualization.selectTime"/>";
+            interfaceTexts["visualization.selectHour"] = "<bean:message key="visualization.selectHour"/>";
+            interfaceTexts["visualization.selectMinute"] = "<bean:message key="visualization.selectMinute"/>";
 
-            interfaceTexts["data.visualization.graph.noPlot"] = "<bean:message key="data.visualization.graph.noPlot"/>";
-            interfaceTexts["data.visualization.add"] = "<bean:message key="data.visualization.add"/>";
-            interfaceTexts["data.visualization.button.init"] = "<bean:message key="data.visualization.button.init"/>";
-            interfaceTexts["data.visualization.parameter"] = "<bean:message key="data.visualization.parameter"/>";
+            interfaceTexts["visualization.graph.noPlot"] = "<bean:message key="visualization.graph.noPlot"/>";
+            interfaceTexts["visualization.add"] = "<bean:message key="visualization.add"/>";
+            interfaceTexts["visualization.button.init"] = "<bean:message key="visualization.button.init"/>";
+            interfaceTexts["visualization.parameter"] = "<bean:message key="visualization.parameter"/>";
 
-            interfaceTexts["data.visualization.parameter.buttons.help"] = "<bean:message key="data.visualization.parameter.buttons.help"/>";
-            interfaceTexts["data.visualization.parameter.buttons.help.text"] = "<bean:message key="data.visualization.parameter.buttons.help.text"/>";
+            interfaceTexts["visualization.parameter.buttons.help"] = "<bean:message key="visualization.parameter.buttons.help"/>";
+            interfaceTexts["visualization.parameter.buttons.help.text"] = "<bean:message key="visualization.parameter.buttons.help.text"/>";
 
-            interfaceTexts["<%=AxeTypeForFixedPlateform.TIME_LINE%>"] = "<bean:message key="data.visualization.axeType.TimeLine"/>";
-            interfaceTexts["<%=AxeTypeForFixedPlateform.TIME_POINTS%>"] = "<bean:message key="data.visualization.axeType.TimePoints"/>";
-            interfaceTexts["<%=AxeTypeForMobilePlateform.D2_POINTS%>"] = "<bean:message key="data.visualization.axeType.2DPoints"/>";
+            interfaceTexts["<%=AxeTypeForFixedPlateform.TIME_LINE%>"] = "<bean:message key="visualization.axeType.TimeLine"/>";
+            interfaceTexts["<%=AxeTypeForFixedPlateform.TIME_POINTS%>"] = "<bean:message key="visualization.axeType.TimePoints"/>";
+            interfaceTexts["<%=AxeTypeForMobilePlateform.D2_POINTS%>"] = "<bean:message key="visualization.axeType.2DPoints"/>";
 
             interfaceTexts["data.access.extract3"] = "<bean:message key="data.access.extract3"/>";
