# JavaServer Pages (JSP) technology

The JavaServer Pages technology enables you to generate dynamic web content, such as HTML, DHTML, XHTML, and XML files, to include in a Web application. JSP files are one way to implement server-side dynamic page content. JSP files allow a Web server, such as Apache Tomcat, to add content dynamically to your HTML pages before they are sent to a requesting browser.

When you deploy a JSP file to a Web server that provides a servlet engine, it is preprocessed into a servlet that runs on the Web server. This is in contrast with client-side JavaScript™ (within `<SCRIPT>` tags), which is run in a browser. A JSP page is ideal for tasks that are better suited to execution on the server, such as accessing databases or calling Enterprise Java™ beans.

You can create and edit a JSP file in the HTML editor by adding your own text and images using HTML, JSP tagging, or JavaScript, including Java source code inside of scriptlet tags. Typically, JSP files have the file extension .jsp. Additionally, the JSP specification suggests that JSP fragment files should have file extension .jspf. If this convention is not followed, the JSP validator will treat JSP fragments as regular standalone JSP files, and compilation errors might be reported.

The Sun Microsystems JSP 1.2 Specification provides the ability to create custom JSP tags. Custom tags simplify complex actions and provide developers with greater control over page content. Custom tags are collected into a library (taglib). A tag library descriptor file (taglib.tld) is an XML document that provides information about the tag library, including the taglib short name, library description, and tag descriptions. Refer to the Sun Microsystems JSP 1.2 Specification for more details.

To use JSP 1.2 custom taglibs, you can import the tag library .tld and .jar files into your project to use them, or associate them as Web Library projects. You can also reference a TLD file by using a URI.

Related concepts
Servlets
Listeners
Listeners
Related tasks
Creating JavaServer Pages (JSP) files