Espaços para nome do Spring XML: Como descubro quais são as classes de implementação por trás deles?

No meu aplicativo Spring 3.1, em algum momento preciso alterar o comportamento padrão de alguns dos namespaces do Spring em meus arquivos de contexto. Para fazer isso, eu crio classes personalizadas que implementam algumas interfaces ou estendem as classes padrão que Spring usa.

Mas acho difícil saber exatamente quais são as classes que o Spring usa por trás de seus namespaces! Quais são os passos necessários para encontrá-los?

Por exemplo, o namespace de segurança:

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:sec="http://www.springframework.org/schema/security"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
                           http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
                           http://www.springframework.org/schema/security 
                           http://www.springframework.org/schema/security/spring-security-3.1.xsd">

e algo como:

<sec:http>
    ...
    <sec:logout />
</sec:http>

Como faço para encontrar quais classes são usadas pelo namespace "<sec: logout />"? Eu não encontro a informação olhandohttp://www.springframework.org/schema/security/spring-security-3.1.xsd !

Onde devo procurar?

questionAnswers(4)

yourAnswerToTheQuestion