Tell me the suitable applications for EJB/JSP/Servlet/RMI?
Most enterprise applications are going to use JSP and/or servlets in one form or another. Most "best practices" advocate using servlets as front controllers and filters for handling incoming HTTP requests. JSPs, on the other hand, are used to build dynamic markup pages, such as HTML and WML.
RMI provides a relatively transparent framework for handling remote (cross-VM) method calls. EJBs are intended to encapsulate business logic (session beans), data-source entities (entity beans), and asynchronous message handlers (message-driven beans).