You can define Sakai roughly as a series of web applications running in a servlet container with some shared central services. A servlet is a Java object that gets a request from the servlet container — the Tomcat server in this case — and sends a response. The web browser makes a request; an application receives the request, does some work, and then generates a response (normally a web page) that the end user gets to see. Of course, the exact details are more complex; in the case of Sakai, the web browser request goes to an aggregator that dispatches many requests to specific tools, which in turn use services and generate responses. The aggregator then collects the responses to make one view for the end user.
Luckily for Java developers, the architects based the Sakai framework on standard technologies. That was smart: it's easy to find employable developers because the technology is well-known. Just as importantly, at a technical level the servlet container isolates...