Hi Sushant,
Struts is a prove framework for web application based on MVC model.It is best for large scale web applications which consists of jsp as view or for rendering,
servlets as a controller and the data being represented in form of Java Bean.Now Struts achieves the best out of these by its architecture.
when we talk of enterprise application, there are five different layers to it..
1) Client Layer----JSP,HTML,Thick client(c#.Net)
2) Application Layer ---The controller Servlet
3) Service Layer --- StateLess Facade Bean
4) Domain Layer -- Container Managed Entity Beans
5) Persistence Layer---OR/Mappers,CMP 2.0,Third party tool.
Now for the first two layers you can use Struts quite seamlessly and make it talk to The EJB scheme of things which begins from the service layer.So the inference is Struts works best for web-interface and EJB is for enterprise, so Struts can be used as a gateway to EJB but they never comprehend each other.
Hope that clears your perception....
Rishi Singh
SCJP,SCWCD