You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Joachim Rohde (JIRA)" <ji...@apache.org> on 2017/03/29 18:15:41 UTC
[jira] [Created] (WICKET-6350) setRequired checks for primitive
type only when the FormComponent is NOT required
Joachim Rohde created WICKET-6350:
-------------------------------------
Summary: 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)