A stand-alone servlet engine has built in servlet support and performs normal HPPT server functions. While an add-on servlet engine acts as a plug-in to an existing server, thus allowing users to take full advantage of the latest APIs apart from Web server features like caching or the ability to co-exist with other languages like Perl.

With stand-alone servlet engine, installation and configuration is fairly easy as the web-server and servlet engine can be integrated in one installation. While with add-on servlet engine, users may encounter compatibility and integration problems. However, compared to stand-alone servlet engine, add-on servlet engine can change between different servlet engines easily especially to a newer version.

 Stand-alone servlet engine cannot take full advantage of advanced web server features like caching or the ability to co-exist with other languages like Perl. Also Stand-alone servlet engines are usually not as well integrated with other parts of the J2EE specification like EJBs or JMS.

Reference:

Brown, K. et al. (2003). Enterprise Java Programming with IBM WebSphere.
Addison-Wesley