In the section 1.9.2 of EL 3.0 Specification, the ==,!= operators should coerce to numeric objects first if one of the operators is a number, String coercion is the last option. The current order in the code prioritizes first the String conversion and for example '01' == 1 returns false.
I'm going to send a PR with (more or less) the same change that @markt-asf performed in tomcat.
Same issue to the one commented in tomcat:
https://bz.apache.org/bugzilla/show_bug.cgi?id=52666
In the section 1.9.2 of EL 3.0 Specification, the ==,!= operators should coerce to numeric objects first if one of the operators is a number, String coercion is the last option. The current order in the code prioritizes first the String conversion and for example '01' == 1 returns false.
I'm going to send a PR with (more or less) the same change that @markt-asf performed in tomcat.