[
https://issues.apache.org/jira/browse/WICKET-6350?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15947808#comment-15947808
]
Joachim Rohde commented on WICKET-6350:
---------------------------------------
Apologies accepted ;-)
But the question remains: is this check really needed?
> setRequired checks for primitive type only when the FormComponent is NOT
> required
> ---------------------------------------------------------------------------------
>
> Key: WICKET-6350
> URL: https://issues.apache.org/jira/browse/WICKET-6350
> Project: Wicket
> Issue Type: Bug
> Components: wicket
> Affects Versions: 8.0.0-M4
> Reporter: Joachim Rohde
> Priority: Minor
>
> I was tinkering around with Kotlin and Wicket and had the following snippet:
> val housenumbervalue: Int? = null
> val housenumberModel: IModel<Int> = Model<Int>()
> val housenumber = TextField<Int>("housenumberModel", housenumberModel,
> Int::class.java)
> val form: Form<Unit> = object : Form<Unit>("adressForm") {}
> override fun onInitialize() {
> super.onInitialize()
> form.add(housenumber.setRequired(false))
> form.add(object : SubmitLink("submit") {
> override fun onSubmit() {
> super.onSubmit()
> println(housenumberModel.`object`)
> }
> })
> add(form)
> }
> This code resulted in
> org.apache.wicket.WicketRuntimeException: FormComponent can't be required
> when the type is primitive class: [TextField [Component id =
> housenumberModel]]
> at
> org.apache.wicket.markup.html.form.FormComponent.setRequired(FormComponent.java:1052)
> at com.mycompany.test.web.pages.Test.onInitialize(Test.kt:28)
> Turns out that setRequired was checking only if the FormComponent was *not*
> required. It should be the other way round. I opened a pull request.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)