JSP Interview Questions and Answers
Can you override jspInit() method? If yes,
In which cases?
ye, we can. We do it usually when we need to
initialize any members which
are to be available for a servlet/JSP throughout its lifetime.
What is the difference between directive include and jsp include?
<%@ include> : Used to include static resources during translation time.
: Used to include dynamic content or static content during runtime.
What is the difference between RequestDispatcher and sendRedirect?
RequestDispatcher: server-side redirect with request and response
objects. sendRedirect : Client-side redirect with new request and
How does JSP handle runtime exceptions?
Using errorPage attribute of page directive and also we need to specify
isErrorPage=true if the current page is intended to URL redirecting of a
How can my application get to know when a HttpSession is removed?
Define a Class HttpSessionNotifier which implements
HttpSessionBindingListener and implement the functionality what you need
in valueUnbound() method.
Create an instance of that class and put that instance in HttpSession.
What Class.forName will do while loading drivers?
It is used to create an instance of a driver and register it with the
DriverManager. When you have loaded a driver, it is available for making
a connection with a DBMS.
How to Retrieve Warnings?
SQLWarning objects are a subclass of SQLException that deal with
database access warnings. Warnings do not stop the execution of an
application, as exceptions do; they simply alert the user that something
did not happen as planned. A warning can be reported on a Connection
object, a Statement object (including PreparedStatement and
CallableStatement objects), or a ResultSet object. Each of these classes
has a getWarnings method, which you must invoke in order to see the
first warning reported on the calling object
SQLWarning warning = stmt.getWarnings();
if (warning != null)
while (warning != null)
System.out.println(\"Message: \" + warning.getMessage());
System.out.println(\"SQLState: \" + warning.getSQLState());
System.out.print(\"Vendor error code: \");
warning = warning.getNextWarning();
How many JSP scripting elements are there and what are they?
There are three scripting language elements: declarations, scriptlets,
In the Servlet 2.4 specification SingleThreadModel has been deprecated,
Because it is not practical to have such model. Whether you set
isThreadSafe to true or false, you should take care of concurrent client
requests to the JSP page by synchronizing access to any shared objects
defined at the page level.
Is JSP technology extensible?
YES. JSP technology is extensible through the development of custom
actions, or tags, which are encapsulated in tag libraries.
Can we use the constructor, instead of init(), to initialize servlet?
Yes , of course you can use the constructor instead of init(). There’s
nothing to stop you. But you shouldn’t. The original reason for init()
was that ancient versions of Java couldn’t dynamically invoke
constructors with arguments, so there was no way to give the constructur
a ServletConfig. That no longer applies, but servlet containers still
will only call your no-arg constructor. So you won’t have access to a ServletConfig or ServletContext.
How can a servlet refresh automatically if some new data has entered the
You can use a client-side Refresh or Server Push.
The code in a finally clause will never fail to execute, right?
Using System.exit(1); in try block will not allow finally code to
How many messaging models do JMS provide for and what are they?
JMS provide for two messaging models, publish-and-subscribe and
Page Numbers : 1