Hello everyone, I am trying to display an error page if user enters a wrong number. The number has to be between 1 an d 10. I get following error: type Exception report
message description The server encountered an internal error () that prevented it from fulfilling this request. exception LuckyException at LuckyNumber1Servlet.validate_number(Unknown Source) at LuckyNumber1Servlet.doGet(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:743) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) Folks, I tried various ways to fix this issue. spent many hours searching thru books and internet, but could not find a way out. Can someone please point out the bug here? Thanks Raju Lokhande ********************************************************************************************************* Here is my servlet code: import java.io.*; import java.util.*; import java.sql.*; import javax.servlet.*; import javax.servlet.http.*; /** * This is a simple example of an HTTP Servlet. It responds to the GET * method of the HTTP protocol. */ public class LuckyNumber1Servlet extends HttpServlet { private int inp_int; public void init() throws ServletException { ServletContext servletContext = getServletContext(); servletContext.setAttribute("ServletTotal", new Integer(0)); } // end of init public void validate_number(String in_str) throws LuckyException { inp_int = Integer.parseInt( in_str ); if ( inp_int < 1 || inp_int > 10 ) throw new LuckyException(); } public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); response.setBufferSize(8192); PrintWriter out = response.getWriter(); // then write the data of the response out.println("<html>" + "<head><title>Hello</title></head>"); // then write the data of the response out.println("<body bgcolor=\"#ffffff\">" + "<img src=\"duke.waving.gif\">" + "<h2>My lucky number is 7. What's yours?</h2>" + "<form method=\"get\">" + "<input type=\"text\" name=\"lnumber\" size=\"25\">" + "<p></p>" + "<input type=\"submit\" value=\"Submit\">" + "<input type=\"reset\" value=\"Reset\">" + "</form>"); String lnumber = request.getParameter("lnumber"); Integer SessionTotal; int temp_int; if ( lnumber != null && lnumber.length() > 0 ) { try { validate_number( lnumber ); } catch ( LuckyException not_ignored) { response.resetBuffer(); throw new ServletException( not_ignored ) ; } HttpSession session = request.getSession( true ); synchronized(session) { SessionTotal = (Integer) session.getAttribute ( "SessionTotal"); if ( SessionTotal == null ) SessionTotal = new Integer(0); temp_int = SessionTotal.intValue() ; int temp_count = temp_int + Integer.parseInt( lnumber); Integer temp_integer = new Integer( temp_count); session.setAttribute ( "SessionTotal", temp_integer ); } ServletContext servletContext = getServletContext (); Integer ServletTotal = (Integer) servletContext.getAttribute ("ServletTotal"); if ( ServletTotal == null ) ServletTotal = new Integer( 0 ); int temp_int2 = ServletTotal.intValue() ; int temp_count2 = temp_int2 + Integer.parseInt( lnumber); Integer temp_integer2 = new Integer( temp_count2 ); servletContext.setAttribute("ServletTotal", temp_integer2); RequestDispatcher dispatcher = getServletContext().getRequestDispatcher ("/lucky2"); if (dispatcher != null) dispatcher.include(request, response); } out.println("</body></html>"); out.close(); } // end of doGet(). public String getServletInfo() { return "The LuckyNumber1Servlet servlet types a number."; } } // end of class LuckyNumber1Servlet *********************LuckyException.java ******************************* import javax.servlet.*; public class LuckyException extends ServletException { public LuckyException () { } /* public LuckyException (String msg) { super(msg); } */ } *********************web.xml file under /appication-context/web/WEB-INF ******************************* <?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation ="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>hello1</display-name> <servlet> <display-name>GreetingServlet</display-name> <servlet-name>GreetingServlet</servlet-name> <servlet-class>GreetingServlet</servlet-class> </servlet> <servlet> <display-name>ResponseServlet</display-name> <servlet-name>ResponseServlet</servlet-name> <servlet-class>ResponseServlet</servlet-class> </servlet> <servlet> <display-name>LuckyNumber1Servlet</display-name> <servlet-name>LuckyNumber1Servlet</servlet-name> <servlet-class>LuckyNumber1Servlet</servlet-class> </servlet> <servlet> <display-name>LuckyNumber2Servlet</display-name> <servlet-name>LuckyNumber2Servlet</servlet-name> <servlet-class>LuckyNumber2Servlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>GreetingServlet</servlet-name> <url-pattern>/greeting</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>ResponseServlet</servlet-name> <url-pattern>/response</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>LuckyNumber1Servlet</servlet-name> <url-pattern>/luckynumber</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>LuckyNumber2Servlet</servlet-name> <url-pattern>/lucky2</url-pattern> </servlet-mapping> <error-page> <exception-type>LuckyException</exception-type> <location>/errorpage.html</location> </error-page> </web-app> *********************errorpage.html file under /appication-context/web/ ******************************* <html> <head> <title>Data Entry Error</title> </head> <body bgcolor="white"> <h2>Please enter a number between 1 and 10. </h2> </body> </html>
This message, together with any attachments, is intended only for the use of the individual or entity to which it is addressed. It may contain information that is confidential and prohibited from disclosure. If you are not the intended recipient, you are hereby notified that any dissemination or copying of this message or any attachment is strictly prohibited. If you have received this message in error, please notify the original sender immediately by telephone or by return e-mail and delete this message, along with any attachments, from your computer. Thank you.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]