From XYZAction, the control reaches LoginAction properly. But then, what happens is that though the forward InitLogin points to a JSP, the LoginAction actionclass is entered again (instead of the page showing up), and this is happening over and over again. Please help me out of this conundrum.
Within InitLogin Action, you have defined a global forward and a local forward both named "InitLogin". What is apparently happening is that it's finding the global forward which points back again to the action class and that puts it into an endless loop.
The solution is to name your local forward something else besides "InitLogin" (e.g. localInitLogin) and have the InitLogin action forward to localInitLogin rather than InitLogin.