First of all, in intercept-url, you have to write access="isFullyAuthenticated()" or use the spring security constants : IS_AUTHENTICATED_FULLY
your declaration is <intercept-url pattern="/login.do" access="fullyAuthenticated" />
Meaning that you have to be logged in for accessing the login.do page.
I don't think it is what you want.
here some examples of how intercept-url works:
<intercept-url pattern="/index.jsp" access="permitAll" />
<intercept-url pattern="/secure/extreme/**" access="hasRole('supervisor')" />
<intercept-url pattern="/secure/**" access="isAuthenticated()" />
<intercept-url pattern="/listAccounts.html" access="isAuthenticated()" />
<intercept-url pattern="/post.html" access="hasAnyRole('supervisor','regularuser')" />
<intercept-url pattern="/**" access="denyAll" />
you have to define levels of authorization based on the url of your application.
to access the login page, you need to let the login page be permitAll access... so the user can login.
if a user try to access a isAuthenticated() page without being logged in, there will be a redirection to the login page.
you can put multiple access to a pattern. For example, you can decide that a page could be accessed with authentification OR a anonymous role:
<intercept-url pattern='/page2.jsp' access='ROLE_ANONYMOUS,ROLE_USER'/>