I have an application which is build using struts framework. I have to refactor that application according to the SOA( service oriented architeture) so that there is loose coupling among different layers. I am lost and dont know how should I go about it and whats exaclty need to be done. Please help me.
You ask a pretty big question. "Service Oriented Architecture" is a term with a lot of definitions. If you are going the approach where "everything is a service" then I would envision that you would have to refactor your business layer to have an open service type interface (web services?). Your Struts actions classes would then never make direct database calls or EJB calls but would instead interface with your backend via its interface.
In my opinion, there would be too much overhead if every page had to make several web service type calls just to show a web page with some data.
Based on your post I would say that you have some serious research in front of you. SOA is much more than just "loose coupling among different layers".