I am using Spring's form:input as below :
<form:input type="number" .....>
in my jsp but when I check the html that is rendered on the browser it shows like :
type="number" type="text"
i.e., two type attributes are generated in the html.  
On the other hand, if I check using inspect element option in the browser, it shows correct - only type="number" as expected.
Edit- My Question: Why am I getting two type attributes in generated html (type="number" type="text") ? How to get it resolved?
 
                        
Spring
form:inputtag doesnt have any attribute namedtypeand thetype=numberused in your code belongs to html5 input tagAlso have a look at HTML Text Input allow only Numeric input
Spring form tld lists the valid attributes of
form:inputelement here