The J2EE relies heavily on JavaServer Pages (JSP) to bridge the gap between EJB and HTML code, placing JSPs at the key boundary between data and presentation. However, JSP falls short of its intended purpose. For one thing, advocates of the model-view-controller design pattern still find fault in JSP's architecture. FreeMarker, an alternative to JSP, is a template-based, open source API that leverages the skills of Java developers and HTML authors in parallel. You can place FreeMarker tags in text files of any format and are not married to any server-side architecture or solution. FreeMarker is easily extensible, and you can quickly build a library of reusable custom objects that will live longer than the technology solutions that utilize them.