Author: chatellier Date: 2010-11-04 16:12:03 +0000 (Thu, 04 Nov 2010) New Revision: 169 Log: Ajout du chemin de fichier dans le message d'erreur Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/ImportService.java trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/ImportService.java =================================================================== --- trunk/coser-business/src/main/java/fr/ifremer/coser/services/ImportService.java 2010-11-04 15:53:12 UTC (rev 168) +++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/ImportService.java 2010-11-04 16:12:03 UTC (rev 169) @@ -107,7 +107,7 @@ } else { if (originalLoading) { - checkFileHeader(category, line); + checkFileHeader(file, category, line); if (category.isDataCategory()) { line = (String[])ArrayUtil.concat(new String[]{AbstractDataEntity.PROPERTY_LINE}, line); } @@ -144,11 +144,12 @@ /** * Check csv file header names and order depending on file category. * - * @param category - * @param line + * @param file file + * @param category category + * @param line header line to ckeck * @throws CoserBusinessException */ - protected void checkFileHeader(Category category, String[] line) throws CoserBusinessException { + protected void checkFileHeader(File file, Category category, String[] line) throws CoserBusinessException { String[] enHeaders = null; String[] frHeaders = null; @@ -180,7 +181,8 @@ if (frHeaders != null) { if (!Arrays.equals(line, enHeaders) && !Arrays.equals(line, frHeaders)) { - throw new CoserBusinessException(_("Wrong header detected in file. Find : %s, expected %s or %s", + throw new CoserBusinessException(_("Wrong header detected in file %s. Find : %s, expected %s or %s", + file.getAbsolutePath(), StringUtils.join(line, ", "), StringUtils.join(enHeaders, ", "), StringUtils.join(frHeaders, ", "))); @@ -188,7 +190,8 @@ } else { if (!Arrays.equals(line, enHeaders)) { - throw new CoserBusinessException(_("Wrong header detected in file. Find : %s, expected %s", + throw new CoserBusinessException(_("Wrong header detected in file %s. Find : %s, expected %s", + file.getAbsolutePath(), StringUtils.join(line, ", "), StringUtils.join(enHeaders, ", "))); } Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java =================================================================== --- trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java 2010-11-04 15:53:12 UTC (rev 168) +++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/ProjectService.java 2010-11-04 16:12:03 UTC (rev 169) @@ -37,9 +37,7 @@ import java.util.List; import java.util.Map; import java.util.Set; -import java.util.SortedMap; import java.util.SortedSet; -import java.util.TreeMap; import java.util.TreeSet; import org.apache.commons.beanutils.PropertyUtils; @@ -56,7 +54,6 @@ import fr.ifremer.coser.bean.Control; import fr.ifremer.coser.bean.Project; import fr.ifremer.coser.bean.Selection; -import fr.ifremer.coser.bean.Specy; import fr.ifremer.coser.command.Command; import fr.ifremer.coser.command.DeleteLineCommand; import fr.ifremer.coser.command.MergeSpeciesCommand; @@ -148,6 +145,12 @@ for (Map.Entry<Category, File> categoryAndFile : categoriesAndFiles.entrySet()) { Category category = categoryAndFile.getKey(); File dataFile = categoryAndFile.getValue(); + + // test file existence + if (!dataFile.exists()) { + throw new CoserBusinessException(_("Can't read file %s for category %s", dataFile.getAbsolutePath(), _(category.getTranslationKey()))); + } + DataStorage dataStorage = importService.loadCSVFile(project, category, dataFile, true); addProjectContent(project, control, category, dataStorage, false); Modified: trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties =================================================================== --- trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties 2010-11-04 15:53:12 UTC (rev 168) +++ trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties 2010-11-04 16:12:03 UTC (rev 169) @@ -2,6 +2,7 @@ Can't\ create\ project= Can't\ find\ line\ %s\ for\ deletion= Can't\ find\ line\ %s\ for\ undeletion= +Can't\ read\ file\ %s\ for\ category\ %s= Can't\ read\ file\ '%s'.\ Check\ CSV\ file\ separator= Can't\ replace\ data\ value.\ Expected\ %s\ but\ was\ %s= Depth\ attribute\ is\ not\ a\ valid\ double= @@ -16,6 +17,8 @@ Sex\ is\ mandatory= Specy\ %s\ doesn't\ exist\ in\ referential= Weight\ attribute\ is\ not\ a\ valid\ double= +Wrong\ header\ detected\ in\ file\ %s.\ Find\ \:\ %s,\ expected\ %s= +Wrong\ header\ detected\ in\ file\ %s.\ Find\ \:\ %s,\ expected\ %s\ or\ %s= Wrong\ header\ detected\ in\ file.\ Find\ \:\ %s,\ expected\ %s= Wrong\ header\ detected\ in\ file.\ Find\ \:\ %s,\ expected\ %s\ or\ %s= You\ must\ enter\ a\ campagne\ name.= Modified: trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties =================================================================== --- trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties 2010-11-04 15:53:12 UTC (rev 168) +++ trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties 2010-11-04 16:12:03 UTC (rev 169) @@ -2,6 +2,7 @@ Can't\ create\ project=Impossible de cr\u00E9er le projet Can't\ find\ line\ %s\ for\ deletion= Can't\ find\ line\ %s\ for\ undeletion= +Can't\ read\ file\ %s\ for\ category\ %s=Impossible de lire le fichier %s pour la cat\u00E9gorie %s \! Can't\ read\ file\ '%s'.\ Check\ CSV\ file\ separator=Impossible de lire le fichier '%s'.\nMerci de v\u00E9rifier le s\u00E9parateur utilis\u00E9 est bien un point-virgule ';' Can't\ replace\ data\ value.\ Expected\ %s\ but\ was\ %s= Depth\ attribute\ is\ not\ a\ valid\ double= @@ -16,8 +17,8 @@ Sex\ is\ mandatory= Specy\ %s\ doesn't\ exist\ in\ referential=L'esp\u00E8ce %s n'existe pas dans le r\u00E9f\u00E9rentiel Weight\ attribute\ is\ not\ a\ valid\ double= -Wrong\ header\ detected\ in\ file.\ Find\ \:\ %s,\ expected\ %s=Mauvais ent\u00EAte de fichier d\u00E9tect\u00E9.\n\nTrouv\u00E9\u2009\:\n\t%s\nAttendu\u2009\:\n\t%s. -Wrong\ header\ detected\ in\ file.\ Find\ \:\ %s,\ expected\ %s\ or\ %s=Mauvais ent\u00EAte de fichier d\u00E9tect\u00E9.\n\nTrouv\u00E9\u2009\:\n\t%s\nAttendu\u2009\:\n\t%s\nou\u2009\:\n\t%s. +Wrong\ header\ detected\ in\ file\ %s.\ Find\ \:\ %s,\ expected\ %s=Mauvais ent\u00EAte de fichier d\u00E9tect\u00E9 dans\n%s.\n\nTrouv\u00E9\u2009\:\n\t%s\nAttendu\u2009\:\n\t%s. +Wrong\ header\ detected\ in\ file\ %s.\ Find\ \:\ %s,\ expected\ %s\ or\ %s=Mauvais ent\u00EAte de fichier d\u00E9tect\u00E9 dans %s.\n\nTrouv\u00E9\u2009\:\n\t%s\nAttendu\u2009\:\n\t%s\nou\u2009\:\n\t%s. You\ must\ enter\ a\ campagne\ name.= You\ must\ enter\ a\ espece\ name.= You\ must\ enter\ a\ haul\ name.=