Why do this?
<input type="text" name="j_username" value="${SPRING_SECURITY_LAST_USERNAME}">
instead of this?
<input type="text" name="username" value="">
What's the value of the j_username and SPRING_SECURITY_LAST_USERNAME variables?