Solution :
It seems you have already forwarded a response in catch block with below code:
RequestDispatcher dd = request.getRequestDispatcher("error.jsp");
dd.forward(request, response);
So,now you must not again call the :
response.sendRedirect("usertaskpage.jsp");
As it is already forwarded (committed).
So what you can really do is: keep the string to assign where you need to forward a response.
String page = "";
try {
} catch (Exception e) {
page = "error.jsp";
} finally {
page = "usertaskpage.jsp";
}
RequestDispatcher dd=request.getRequestDispatcher(page);
dd.forward(request, response);
OR
Cause of IllegalStateException exception is the java servlet is attempting to write to a response after a response has been committed. It is always better to ensure that the no content is added to a response after a forward or the redirect is done to avoid the IllegalStateException. It can be done by including the ‘return’ statement immediately next to a forward or redirect statement.