I. Servlets Advantages over ASP are tabulated.
|Platform-independent||Servelts are platform-independent being written in Java.||Works on Windows, a Microsoft product, only.|
|Java Benefits||Servlets are written in Java and can take advantage of OOPs, robustness and most important garbage collection in code development.||Written in VBScript (or JScript), a Microsoft product, only.|
|Performance||Because Servlets are compiled earlier before execution, they are of high-performance.||Because VBScript is intrepreted on client request on-the-fly, ASP comparatively of less performance.|
|System crash||Servlets (JVM) never crash the host system.||ASP on Windows NT 4.0 (when a kernel-mode driver fails) can crash entire system.|
|Easier Maintenance and scaling||As Java is structured, it is much easier to maintain and build large-sized applications and can be scalable along with other J2EE modules.||As ASP is written in a scripting language, difficult to manage complex and big applications and less scalable. ASP is good for smaller applications.|
|J2EE advantage||Servlets can take advantage of JMS, transaction management, resource pooling, JNDI, ORM support (like Hibernate) and MVC implementation etc.||ASP cannot enjoy all these built-in features of Servlets.|
|Data persistence||Servlets can have access to persistent data through JavaBean components.||ASP have no data persistence across pages.|
|Virus attack||Many Web servers, where Servlets are working, are on UNIX and thereby they are very secure||ASP works on Windows and Windows can get attacked easily with virus from Internet.|
|Communicty and tool support||As Servlets are developed through Java Community Process, Servlets can be run on different Web servers like Tomcat (free software) or Weblogic or JBOSS etc., where the client can be choosy.||Works on IIS (Internet Information Server) server, a Microsoft product, only.|
Java (being object-oriented) has high-learning curve than ASP (being object-based).
Refer for more 15 Advantages of Servlets over CGI and ASP>