I've been trying to debug this and it just got weirder... sometimes URLs are getting called twice other times not, but the process is always the same:
1) doGet catches link and calls executeAction()
2) executeAction searches the class annotations and corresponding methods and when it finds an annotation equal to the action it calls the method
3) method does it's stuff and returns the address to display (jsp file)
4) excecuteAction returns that address to doGet
5) doGet forwards with RequestDispatcher
I'm printing what the query
string at doGet start and what the jsp path is just before the fowarding with the RequestDispatcher. Every single time both the query string and address are correct, only sometimes the doGet gets called twice, here is an example of a double call:
[doGet] Start #####################
[doGet] Request Query: action=action1&id=27
[doGet] Forward Address: /WEB-INF/jsp/view1.jsp
[doGet] End #####################
[doGet] Start #####################
[doGet] Request Query: action=action1&id=27
[doGet] Forward Address: /WEB-INF/jsp/view1.jsp
[doGet] End #####################
Above "Start" is printed just after doGet and "End" just after the RequestDispatcher is called. This happens when I click the link or when I copy-paste the address to the browser URL bar. However it is not persistant, i.e. does not happen everytime...
Edit: @Bear Bibeault: No no javascript whatsoever, all content is pure HTML with some EL to access session varibles and do "foreach" cycles and "if" tests.