yeah it works. But i still cannot understand why my code does not work. Theoretically my code should work right? --- "Ramu, Vinod" <[EMAIL PROTECTED]> wrote:
> Hi, > > This what I did > > 1. I added below configuration > > <error-page> > > <exception-type>java.sql.SQLException</exception-type> > <location>/index.html</location> > </error-page> > > 2. Then added below lines to my doPost() > throw new ServletException("SQLException", new > SQLException()); > > It works for me. > > Could you try to direct your error location to a > static page instead of > a servlet? > > Vinod > > -----Original Message----- > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] > Sent: Saturday, March 26, 2005 11:21 AM > To: tomcat-user@jakarta.apache.org > Subject: Problem with error-handling > > > I am using Tomcat5.5, j2sdk1.5 > > I deliberately created a SQLException to try error > page handling but it does not work and i don't know > why. > > I have been trying to solve this problem for hours > with no result. I would appreciate it if someone > offers to look at my war file for me. I'm desperate > please help me. > > web.xml > <?xml version="1.0" encoding="ISO-8859-1"?> > <!DOCTYPE web-app > PUBLIC "-//Sun Microsystems, Inc.//DTD Web > Application 2.3//EN" > "http://localhost/dtd/web-app_2_3.dtd"> > <web-app> > <context-param> > <param-name>driverClassName</param-name> > <param-value>com.mysql.jdbc.Driver</param-value> > </context-param> > <context-param> > <param-name>dbUsername</param-name> > <param-value>user</param-value> > </context-param> > <context-param> > <param-name>dbPassword</param-name> > <param-value>password</param-value> > </context-param> > > <listener> > <listener-class> > MyListener > </listener-class> > </listener> > > > <servlet> > <servlet-name>ErrorServlet</servlet-name> > > <servlet-class>chapter04.ErrorServlet</servlet-class> > > > </servlet> > <servlet> > <servlet-name>LoginServlet</servlet-name> > > <servlet-class>chapter04.LoginServlet</servlet-class> > <init-param> > <param-name>dburl</param-name> > > <param-value>jdbc:mysql://localhost/test</param-value> > </init-param> > </servlet> > > <servlet-mapping> > <servlet-name>LoginServlet</servlet-name> > <url-pattern>/login</url-pattern> > </servlet-mapping> > <servlet-mapping> > <servlet-name>ErrorServlet</servlet-name> > <url-pattern>/error</url-pattern> > </servlet-mapping> > > <error-page> > <error-code>403</error-code> > <location>/html/login.html</location> > </error-page> > > <error-page> > > <exception-type>java.sql.SQLException</exception-type> > <location>/error</location> > </error-page> > > </web-app> > > > LoginServlet.java (doPost method) > public void doPost(HttpServletRequest req, > HttpServletResponse res) > throws IOException, ServletException { > String userid = req.getParameter("userid"); > String password = req.getParameter("password"); > > > if (userid != null && password != null && > userid.length() > 0 > && password.length() > 0) { > > ServletConfig config = > getServletConfig(); > ServletContext context = > config.getServletContext(); > //context param > String driverClassName = > context.getInitParameter("driverClassName"); > String dbUsername = > context.getInitParameter("dbUsername"); > String dbPassword = > context.getInitParameter("dbPassword"); > //config param > String dburl = > config.getInitParameter("dburl"); > > MySqlDAO dao = new MySqlDAO(); > try { > dao.init(driverClassName, dburl, > dbUsername, > dbPassword); > } catch (ClassNotFoundException e1) { > // TODO Auto-generated catch > block > e1.printStackTrace(); > throw new > ServletException("ClassNotFoundException", e1); > } catch (SQLException e1) { > // TODO Auto-generated catch > block > e1.printStackTrace(); > throw new > ServletException("SQLException", e1); > } > try { > if(dao.verifyUser(userid, > password)) { > > context.setAttribute("userid", userid); > ServletContext ct = > getServletContext(); > RequestDispatcher rd = > ct > > .getRequestDispatcher("/jsp/welcome.jsp"); > rd.forward(req, res); > } else { > > res.setStatus(HttpServletResponse.SC_FORBIDDEN); > > } > } catch (SQLException e) { > // TODO Auto-generated catch > block > e.printStackTrace(); > throw new > ServletException("SQLException", e); > } catch (ServletException e) { > // TODO Auto-generated catch > block > e.printStackTrace(); > } catch (IOException e) { > // TODO Auto-generated catch > block > e.printStackTrace(); > } > > > } else { > res.sendError(HttpServletResponse.SC_FORBIDDEN); > /* > RequestDispatcher rd = > req.getRequestDispatcher("html/login.html"); > rd.forward(req, res); > */ > } > return; > } > > > === message truncated === __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]