Hi Khusro. Welcome to
Java Ranch
I am afraid you are in for a long hair-pulling ride. The plethora of J2EE frameworks can make it very hard to choose one. They all have their place though.
Now, you don't really need to use any of the frameworks. If it is a small application, you can very well write the web interface using Servlets, JavaBeans, JSPs and JSTL. Make sure that there is adequate decoupling between the business logic and web MVC layers. Read up on Front Controller pattern, if you haven't already done so. Rod Johnson's first two books address issues in web MVC design quite well.
If the application is big enough and you decide to you a framework, I recommend having a look at Tapestry. Tapestry provides a component based development model for web frontend (so does JSF). I have only looked at these two briefly, but I found Tapestry to be much more elegant than JSF, JSF code just looks ugly!! Another component based framework, which is said to be much simpler with a shorter learning curve, is Wicket.
[Edit: I recommended these because you are coming from Swing background and may feel right at home writing components. A lot of people who start with request-response based frameworks like Struts etc. find component based web development too complex and hard to adapt to]
If you decide to ditch component based development, and go for request-response based development, I would recommend Spring MVC. The other choices are Webwork 2 and Struts. If you do a google search on saloon.javaranch.com, you will find a few posts comparing Spring MVC with Struts.
Good Luck, and HTH
[ November 28, 2005: Message edited by: Sonny Gill ]