From 187875ca810ec4086b3f475704d7d69add829285 Mon Sep 17 00:00:00 2001 From: srosse <none@none> Date: Wed, 28 Sep 2016 09:37:09 +0200 Subject: [PATCH] OO-2214: catch NumberFormatException and show the error --- .../ims/qti/questionimport/TextInputController.java | 12 +++++++++--- .../questionimport/_i18n/LocalStrings_de.properties | 2 +- .../questionimport/_i18n/LocalStrings_en.properties | 3 ++- .../questionimport/_i18n/LocalStrings_fr.properties | 1 + 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/olat/ims/qti/questionimport/TextInputController.java b/src/main/java/org/olat/ims/qti/questionimport/TextInputController.java index 1e81d7349e4..dd9afd87801 100644 --- a/src/main/java/org/olat/ims/qti/questionimport/TextInputController.java +++ b/src/main/java/org/olat/ims/qti/questionimport/TextInputController.java @@ -103,9 +103,15 @@ public class TextInputController extends StepFormBasicController { private boolean convertInputField() { boolean importDataError = false; - CSVToQuestionConverter converter = new CSVToQuestionConverter(getTranslator(), options); - converter.parse(inputElement.getValue()); - parsedItems = converter.getItems(); + try { + CSVToQuestionConverter converter = new CSVToQuestionConverter(getTranslator(), options); + converter.parse(inputElement.getValue()); + parsedItems = converter.getItems(); + } catch (NumberFormatException e) { + logError("", e); + inputElement.setErrorKey("error.format.number", new String[] { e.getMessage() } ); + importDataError = true; + } return importDataError; } diff --git a/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_de.properties index 49c4bab0a35..61571acd8d7 100644 --- a/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_de.properties @@ -53,4 +53,4 @@ table.header.points=Punkte item.type.fib=$org.olat.ims.qti.editor\:item.type.fib item.type.mc=$org.olat.ims.qti.editor\:item.type.mc item.type.sc=$org.olat.ims.qti.editor\:item.type.sc - +error.format.number=Ung\u00FCltige Zahl. Es muss eine Zahl eingegeben werden. {0} diff --git a/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_en.properties index 7d2919fe46d..9bb34185d27 100644 --- a/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_en.properties @@ -55,4 +55,5 @@ table.header.points=Points item.type.fib=$org.olat.ims.qti.editor\:item.type.fib item.type.mc=$org.olat.ims.qti.editor\:item.type.mc -item.type.sc=$org.olat.ims.qti.editor\:item.type.sc \ No newline at end of file +item.type.sc=$org.olat.ims.qti.editor\:item.type.sc +error.format.number=Illegal number. Please enter a number. {0} \ No newline at end of file diff --git a/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_fr.properties b/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_fr.properties index cfe4a4996c4..217163575c4 100644 --- a/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_fr.properties +++ b/src/main/java/org/olat/ims/qti/questionimport/_i18n/LocalStrings_fr.properties @@ -51,3 +51,4 @@ table.header.type=Type de question wizard.import.input.description=Importer par copier-coller des questions que vous avez cr\u00E9\u00E9 sur la base du mod\u00E8le ci-dessous. S\u00E9lectionnez dans le fichier Excel les trois premi\u00E8res colonnes et copiez les dans le masque d'entr\u00E9e. wizard.import.input.title=Donn\u00E9es wizard.import.overview.title=Aper\u00E7u +error.format.number=Nombre invalide. Il faut utiliser un nombre. {0} \ No newline at end of file -- GitLab