Ok, I'm pretty sure this one is a defect...
AbstractHtmlInputElementTag.isDisabled has the single line:
evaluate returns an object, in this case Boolean.TRUE
return "true".equals(evaluate("disabled", getDisabled()));
String.equals will compare types, and return false, the Boolean isn't automagically converted to a string because String.equals takes an Object parameter.
A suggested fix would be:
however that doesn't handle cases where evaluate returns null, so there is probably a better solution...
return "true".equals(evaluate("disabled", getDisabled()).toString());
So where do I go from here? I guess I need to find Spring's bug tracking mechanism, see if this is already raised, and if it's not then raise it with a suggested fix?
This'll be a new process for me so any advice/pointers/links would be appreciated and hopefully stop me from raising items in the wrong system etc and wasting peoples time.