diff --git a/src/main/java/org/olat/course/nodes/iq/QTI21EditForm.java b/src/main/java/org/olat/course/nodes/iq/QTI21EditForm.java
index 70564e533a47ac5e022e6d0f00091b1c45d8b832..dec418afdad74f158c617caec4aaa4f6bfd37b8d 100644
--- a/src/main/java/org/olat/course/nodes/iq/QTI21EditForm.java
+++ b/src/main/java/org/olat/course/nodes/iq/QTI21EditForm.java
@@ -117,6 +117,7 @@ public class QTI21EditForm extends FormBasicController {
 		}
 		maxAttemptsEl = uifactory.addTextElement("maxAttempts", "qti.form.attempts", 8, maxAttemptsValue, formLayout);	
 		maxAttemptsEl.setDisplaySize(2);
+		maxAttemptsEl.setMandatory(true);
 		maxAttemptsEl.setVisible(maxAttempts > 0);
 		
 		boolean blockAfterSuccess = modConfig.getBooleanSafe(IQEditController.CONFIG_KEY_BLOCK_AFTER_SUCCESS, deliveryOptions.isBlockAfterSuccess());
@@ -251,7 +252,10 @@ public class QTI21EditForm extends FormBasicController {
 			maxAttemptsEl.clearError();
 			if(StringHelper.containsNonWhitespace(maxAttemptsEl.getValue())) {
 				try {
-					Integer.parseInt(maxAttemptsEl.getValue());
+					int val = Integer.parseInt(maxAttemptsEl.getValue());
+					if(val <= 0) {
+						maxAttemptsEl.setErrorKey("form.error.nointeger", null);
+					}
 				} catch(NumberFormatException e) {
 					maxAttemptsEl.setErrorKey("form.error.nointeger", null);
 					allOk &= false;