From 2975be95bdb65bc1288624360a7abb7b7613cc2b Mon Sep 17 00:00:00 2001 From: Andrea Del Bene Date: Sun, 16 Aug 2026 21:23:15 +0200 Subject: [PATCH] WICKET-7191 Apply tag attribute "required" when a component is set to required --- .../form/AjaxFormSubmitTestPage_expected.html | 4 ++-- .../validation/HomePage1_ExpectedResult.html | 2 +- .../wicket/markup/html/form/FormComponent.java | 18 ++++++++++++++++++ 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/wicket-core-tests/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitTestPage_expected.html b/wicket-core-tests/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitTestPage_expected.html index fcf45b76b22..b3a6346bc02 100644 --- a/wicket-core-tests/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitTestPage_expected.html +++ b/wicket-core-tests/src/test/java/org/apache/wicket/ajax/form/AjaxFormSubmitTestPage_expected.html @@ -21,8 +21,8 @@
- - + +
diff --git a/wicket-core-tests/src/test/java/org/apache/wicket/markup/html/form/validation/HomePage1_ExpectedResult.html b/wicket-core-tests/src/test/java/org/apache/wicket/markup/html/form/validation/HomePage1_ExpectedResult.html index a87014e30b7..3720db5f5a2 100644 --- a/wicket-core-tests/src/test/java/org/apache/wicket/markup/html/form/validation/HomePage1_ExpectedResult.html +++ b/wicket-core-tests/src/test/java/org/apache/wicket/markup/html/form/validation/HomePage1_ExpectedResult.html @@ -11,7 +11,7 @@
- +
diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java index 28331766df4..eb7da9cb354 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/FormComponent.java @@ -1409,6 +1409,11 @@ protected void onComponentTag(final ComponentTag tag) onDisabled(tag); } + if (isRequired()) + { + onRequired(tag); + } + super.onComponentTag(tag); } @@ -1424,6 +1429,19 @@ protected void onDetach() convertedInput = null; } + /** + * Called by {@link #onComponentTag(ComponentTag)} when the component is required. By default, + * this method will add a required="required" attribute to the tag. Components may override this + * method to tweak the tag as they think is fit. + * + * @param tag + * the tag that is being rendered + */ + protected void onRequired(final ComponentTag tag) + { + tag.put("required", "required"); + } + /** * Called by {@link #onComponentTag(ComponentTag)} when the component is disabled. By default, * this method will add a disabled="disabled" attribute to the tag. Components may override this