With Bootstrap and HTML5 (especially in the Chromium browser), if you declare a NumberTextField<Double>, Bootstrap will prevent you from entering any non-integer values. The reason is because in HTML5 when input type=number a default step of 1 is used. Bootstrap verifies that the input is a multiple of the step. Adding a setStep method will allow you to set this attribute, allowing decimal numbers to be entered.
I would also recommend that if the type is Integer (or Long) the step defaults to 1, and if it's a Double (or Float) the step is any.