JSP directives....
The jsp directives are messages that tells the web container how to translate a
JSP page into the corresponding servlet.
There are three types of directives:
a)page directive
b)include directive
c)taglib directive
Syntax of JSP Directive:
<%@ directive attribute="value" %> |
JSP page directive:
The page directive defines attributes that apply to an entire JSP page.
Syntax of JSP page directive
<%@ page attribute="value" %> |
Important Attributes of JSP page directive:
import
contentType
extends
info
buffer
language
isELIgnored
isThreadSafe
autoFlush
session
pageEncoding
errorPage
isErrorPage
1)import
The import attribute is used to import class,interface or all the members of a
package.It is similar to import keyword in java class or interface.
Example: import attribute:
<html> <body> <%@ page import="java.util.Date" %> Today is: <%= new Date() %> </body> </html> |
2)contentType:
The contentType attribute defines the MIME(Multipurpose Internet Mail Extension)
type of the HTTP response.The default value is "text/html;charset=ISO-8859-1".
Example:contentType attribute
<html> <body> <%@ page contentType=application/msword %> Today is: <%= new java.util.Date() %> </body> </html> |
3)extends
The extends attribute defines the parent class that will be inherited by the
generated servlet.It is rarely used.
4)info
This attribute simply sets the information of the JSP page which is retrieved
later by using getServletInfo() method of Servlet interface.
Example:info attribute
<html> <body> <%@ page info="composed by Sonoo Jaiswal" %> Today is: <%= new java.util.Date() %> </body> </html> |
The web container will create a method getServletInfo()
in the resulting servlet.For example:
public String getServletInfo() {
return "composed by alok sharma";
}
5)buffer
The buffer attribute sets the buffer size in kilobytes to handle output
generated by the JSP page.The default size of the buffer is 8Kb.
Example:buffer attribute
<html> <body> <%@ page buffer="16kb" %> Today is: <%= new java.util.Date() %> </body> </html> |
6)language
The language attribute specifies the scripting language used in the JSP page.
The default value is "java".
7)isELIgnored
We can ignore the Expression Language (EL) in jsp by the isELIgnored attribute.
By default its value is false i.e. Expression Language is enabled by default. We
see Expression Language later.
<%@ page isELIgnored="true" %>//Now EL will be ignored
8)isThreadSafe
Servlet and JSP both are multithreaded.If you want to control this behaviour of
JSP page, you can use isThreadSafe attribute of page directive.The value of
isThreadSafe value is true.If you make it false, the web container will
serialize the multiple requests, i.e. it will wait until the JSP finishes
responding to a request before passing another request to it.If you make the
value of isThreadSafe attribute like:
<%@ page isThreadSafe="false"
%>
The web container in such a case, will generate the servlet as:
public class SimplePage_jsp extends HttpJspBase
implements SingleThreadModel{
.......
}
9)errorPage
The errorPage attribute is used to define the error page, if exception occurs in
the current page, it will be redirected to the error page.
Example: errorPage attribute
//index.jsp <html> <body> <%@ page errorPage="myerrorpage.jsp" %> <%= 100/0 %> </body> </html> |
10)isErrorPage
The isErrorPage attribute is used to declare that the current page is the error
page.
Note: The exception object can only be used in the error page.
Example:isErrorPage attribute
//myerrorpage.jsp <html> <body> <%@ page isErrorPage="true" %> Sorry an exception occured!<br/> The exception is: <%= exception %> </body> </html> |