r81 - in trunk: echobase-services/src/main/java/fr/ifremer/echobase/services/models echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions echobase-ui/src/main/resources/config echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions echobase-ui/src/main/resources/i18n echobase-ui/src/main/webapp/WEB-INF/jsp/import
Author: sletellier Date: 2011-11-14 17:38:34 +0100 (Mon, 14 Nov 2011) New Revision: 81 Url: http://forge.codelutin.com/repositories/revision/echobase/81 Log: - Add content type in import model - Add validation message traduction - Fix import validation Added: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-doImport-validation.xml Removed: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-importForm-validation.xml Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/models/ImportModel.java trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/ImportAction.java trunk/echobase-ui/src/main/resources/config/struts-import.xml trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/models/ImportModel.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/models/ImportModel.java 2011-11-14 15:09:26 UTC (rev 80) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/models/ImportModel.java 2011-11-14 16:38:34 UTC (rev 81) @@ -43,28 +43,28 @@ protected Voyage selectedVoyage; protected File accessImport; - protected String accessImportFileName; + protected String accessImportContentType; protected File accousticImport; - protected String accousticImportFileName; + protected String accousticImportContentType; protected File pecherieImport; - protected String pecherieImportFileName; + protected String pecherieImportContentType; protected File lectureAgeGenImport; - protected String lectureAgeGenImportFileName; + protected String lectureAgeGenImportContentType; protected File eventsImport; - protected String eventsImportFileName; + protected String eventsImportContentType; protected File typeEchoSpeciesImport; - protected String typeEchoSpeciesImportFileName; + protected String typeEchoSpeciesImportContentType; protected String comment; @@ -104,6 +104,14 @@ this.accessImportFileName = accessImportFileName; } + public String getAccessImportContentType() { + return accessImportContentType; + } + + public void setAccessImportContentType(String accessImportContentType) { + this.accessImportContentType = accessImportContentType; + } + public File getAccousticImport() { return accousticImport; } @@ -120,6 +128,14 @@ this.accousticImportFileName = accousticImportFileName; } + public String getAccousticImportContentType() { + return accousticImportContentType; + } + + public void setAccousticImportContentType(String accousticImportContentType) { + this.accousticImportContentType = accousticImportContentType; + } + public File getPecherieImport() { return pecherieImport; } @@ -136,6 +152,14 @@ this.pecherieImportFileName = pecherieImportFileName; } + public String getPecherieImportContentType() { + return pecherieImportContentType; + } + + public void setPecherieImportContentType(String pecherieImportContentType) { + this.pecherieImportContentType = pecherieImportContentType; + } + public File getLectureAgeGenImport() { return lectureAgeGenImport; } @@ -152,6 +176,14 @@ this.lectureAgeGenImportFileName = lectureAgeGenImportFileName; } + public String getLectureAgeGenImportContentType() { + return lectureAgeGenImportContentType; + } + + public void setLectureAgeGenImportContentType(String lectureAgeGenImportContentType) { + this.lectureAgeGenImportContentType = lectureAgeGenImportContentType; + } + public File getEventsImport() { return eventsImport; } @@ -168,6 +200,14 @@ this.eventsImportFileName = eventsImportFileName; } + public String getEventsImportContentType() { + return eventsImportContentType; + } + + public void setEventsImportContentType(String eventsImportContentType) { + this.eventsImportContentType = eventsImportContentType; + } + public File getTypeEchoSpeciesImport() { return typeEchoSpeciesImport; } @@ -184,6 +224,14 @@ this.typeEchoSpeciesImportFileName = typeEchoSpeciesImportFileName; } + public String getTypeEchoSpeciesImportContentType() { + return typeEchoSpeciesImportContentType; + } + + public void setTypeEchoSpeciesImportContentType(String typeEchoSpeciesImportContentType) { + this.typeEchoSpeciesImportContentType = typeEchoSpeciesImportContentType; + } + public boolean validate() { // access file or survey is selected, not both Modified: trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/ImportAction.java =================================================================== --- trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/ImportAction.java 2011-11-14 15:09:26 UTC (rev 80) +++ trunk/echobase-ui/src/main/java/fr/ifremer/echobase/ui/actions/ImportAction.java 2011-11-14 16:38:34 UTC (rev 81) @@ -23,6 +23,7 @@ */ package fr.ifremer.echobase.ui.actions; +import com.opensymphony.xwork2.Preparable; import fr.ifremer.echobase.entities.Voyage; import fr.ifremer.echobase.services.VoyageService; import fr.ifremer.echobase.services.models.ImportModel; @@ -38,7 +39,7 @@ * @author sletellier <letellier@codelutin.com> * @since 0.1 */ -public class ImportAction extends EchoBaseActionSupport { +public class ImportAction extends EchoBaseActionSupport implements Preparable { private static final long serialVersionUID = 1L; @@ -71,18 +72,15 @@ } @Override - public String input() throws Exception { - + public void prepare() throws Exception { VoyageService service = newService(VoyageService.class); List<Voyage> allVoyages = service.getVoyages(); voyages = sortAndDecorate(allVoyages, null); - - return INPUT; } @Override public String execute() throws Exception { - log.info("Will import : " + importModel.toString()); + log.info("Will import : " + getImportModel().toString()); return SUCCESS; } Modified: trunk/echobase-ui/src/main/resources/config/struts-import.xml =================================================================== --- trunk/echobase-ui/src/main/resources/config/struts-import.xml 2011-11-14 15:09:26 UTC (rev 80) +++ trunk/echobase-ui/src/main/resources/config/struts-import.xml 2011-11-14 16:38:34 UTC (rev 81) @@ -36,13 +36,13 @@ <action name="import" class="fr.ifremer.echobase.ui.actions.ImportAction" method="input"> <result name="input">/WEB-INF/jsp/import/import.jsp</result> - <result type="redirectAction">doImport</result> </action> <!-- Display import page --> <action name="doImport" class="fr.ifremer.echobase.ui.actions.ImportAction"> <interceptor-ref name="paramsPrepareParamsStackLoggued"/> - <result name="wait">/WEB-INF/jsp/import/importProgress.jsp</result> + <!--<result name="wait">/WEB-INF/jsp/import/importProgress.jsp</result>--> + <result name="input">/WEB-INF/jsp/import/import.jsp</result> <result>/WEB-INF/jsp/import/importProgress.jsp</result> </action> Copied: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-doImport-validation.xml (from rev 78, trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-importForm-validation.xml) =================================================================== --- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-doImport-validation.xml (rev 0) +++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-doImport-validation.xml 2011-11-14 16:38:34 UTC (rev 81) @@ -0,0 +1,56 @@ +<!-- + #%L + EchoBase :: UI + + $Id$ + $HeadURL$ + %% + Copyright (C) 2011 Ifremer, Codelutin + %% + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero 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 Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + #L% + --> +<!DOCTYPE validators PUBLIC + "-//OpenSymphony Group//XWork Validator 1.0.2//EN" + "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd"> +<validators> + + <field name="query.name"> + + <field-validator type="requiredstring"> + <message key="echobase.validation.export.name.requiredstring"/> + </field-validator> + </field> + + <field name="query.description"> + + <field-validator type="requiredstring"> + <message key="echobase.validation.export.description.requiredstring"/> + </field-validator> + </field> + + <field name="query.sqlQuery"> + + <field-validator type="requiredstring"> + <message key="echobase.validation.export.sqlQuery.requiredstring"/> + </field-validator> + <field-validator type="regex"> + <!-- TODO sletellier 2011/11/14 : Find a better regex exression to define sql query --> + <param name="expression">^\s*select\s+.+\s+from\s+.+$</param> + <param name="caseSensitive">false</param> + <message key="echobase.validation.export.sqlQuery.wrongformat"/> + </field-validator> + </field> + +</validators> \ No newline at end of file Deleted: trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-importForm-validation.xml =================================================================== --- trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-importForm-validation.xml 2011-11-14 15:09:26 UTC (rev 80) +++ trunk/echobase-ui/src/main/resources/fr/ifremer/echobase/ui/actions/ImportAction-importForm-validation.xml 2011-11-14 16:38:34 UTC (rev 81) @@ -1,45 +0,0 @@ -<!-- - #%L - EchoBase :: UI - - $Id$ - $HeadURL$ - %% - Copyright (C) 2011 Ifremer, Codelutin - %% - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero 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 Affero General Public License - along with this program. If not, see <http://www.gnu.org/licenses/>. - #L% - --> -<!DOCTYPE validators PUBLIC - "-//OpenSymphony Group//XWork Validator 1.0.2//EN" - "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd"> -<validators> - - <field name="importModel.selectedVoyage"> - - <field-validator type="fieldexpression"> - <param name="expression">importModel.accessImport == null</param> - <message key="echobase.validation.import.selectedVoyageOrAccessImport.required"/> - </field-validator> - </field> - - <field name="importModel.accessImport"> - - <field-validator type="fieldexpression"> - <param name="expression">importModel.selectedVoyage == null</param> - <message key="echobase.validation.import.selectedVoyageOrAccessImport.required"/> - </field-validator> - </field> - -</validators> Modified: trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties =================================================================== --- trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2011-11-14 15:09:26 UTC (rev 80) +++ trunk/echobase-ui/src/main/resources/i18n/echobase-ui_fr_FR.properties 2011-11-14 16:38:34 UTC (rev 81) @@ -89,4 +89,11 @@ echobase.title.modification.detail=Détail de la modification echobase.title.users=Adminitration des utilisateurs echobase.user.gridTitle=Liste des utilisateurs +echobase.validation.export.description.requiredstring=La description de l'export est obligatoire +echobase.validation.export.name.requiredstring=Le nom de l'export est obligatoire +echobase.validation.export.sqlQuery.requiredstring=La requête de l'export est obligatoire +echobase.validation.export.sqlQuery.wrongformat=La requêtes n'est pas valide +echobase.validation.import.selectedVoyageOrAccessImport.required=Merci de selectionner un voyage ou un import access +echobase.validation.login.password.requiredstring=Le mot de passe est obligatoire +echobase.validation.login.wrongLogin=Le login est déjà utilisé echobase.voyage.selectHeader=Selectionnez un voyage Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp =================================================================== --- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp 2011-11-14 15:09:26 UTC (rev 80) +++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/import/import.jsp 2011-11-14 16:38:34 UTC (rev 81) @@ -26,7 +26,7 @@ <title><s:text name="echobase.title.import"/></title> -<s:form id="importForm" action="import" namespace="/import" method="POST" +<s:form id="importForm" action="doImport" namespace="/import" method="POST" enctype="multipart/form-data"> <fieldset>
participants (1)
-
sletellier@users.forge.codelutin.com