Filtros (Filter)

Tenho o seguinte fluxo de páginas:

A --> B (A chama a B através de um link)
C --> B (C chama a B através de um link)

Gostaria de implementar um filtro (Filter) que forçasse que apenas a A chamasse a B.

ou seja, imagino que no objeto ServletRequest request eu tenha como saber qual foi a página chamadora. Se foi a A ou a C.

do tipo:

request.??? ==> Retorna um http://localhost/xxxx/A.jsp

Como faço isso?

Da uma lida nisso aqui
http://www.exampledepot.com/egs/javax.servlet/GetReqUrl.html

Muito bacana este pequeno tutorial, mas eu queria alguma coisa do tipo

getPreviousURI…

gostaria de pegar o fluxo de alguma forma para que pudesse tomar uma decisão de apresentar ou não uma página em função do fluxo…

Será que só dá para fazer isso usando a Session? Salvando o fluxo na Session?

Obrigado