Generic servlets require you to negotiate with whatever client you're using yourself. The HttpServlet interface deals with http negotiation for you, all you have to do is output the web page from the servlet. Http is the protocol browsers use to request web pages from servers and is therefore everywhere, it helps if you don't have the chore of handling it yourself.