Foundations of JSP Design Patterns