title: java.lang.ClassNotFoundException: org.apache.commons.lang.UnhandledException
body: <p>while running the tomcat, I am getting error like this: 
  (In code, up to controller, it is working fine, but when it comes to JSP page, it is giving error)
  please, can any one help?</p>
  
  <pre><code>Oct 30, 2013 4:48:16 PM org.apache.catalina.core.ApplicationDispatcher invoke
  SEVERE: Servlet.service() for servlet jsp threw exception
  java.lang.ClassNotFoundException: org.apache.commons.lang.UnhandledException
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1680)
      at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526)
      at java.lang.Class.getDeclaredConstructors0(Native Method)
      at java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)
      at java.lang.Class.getConstructor0(Class.java:2714)
      at java.lang.Class.newInstance0(Class.java:343)
      at java.lang.Class.newInstance(Class.java:325)
      at com.sun.beans.finder.InstanceFinder.instantiate(InstanceFinder.java:96)
      at com.sun.beans.finder.InstanceFinder.find(InstanceFinder.java:66)
      at java.beans.Introspector.findExplicitBeanInfo(Introspector.java:455)
      at java.beans.Introspector.&lt;init&gt;(Introspector.java:405)
      at java.beans.Introspector.getBeanInfo(Introspector.java:174)
      at org.apache.jasper.compiler.Generator$TagHandlerInfo.&lt;init&gt;(Generator.java:3911)
      at org.apache.jasper.compiler.Generator$GenerateVisitor.getTagHandlerInfo(Generator.java:2174)
      at org.apache.jasper.compiler.Generator$GenerateVisitor.visit(Generator.java:1632)
      at org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1530)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2361)
      at org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2411)
      at org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2417)
      at org.apache.jasper.compiler.Node$Root.accept(Node.java:495)
      at org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2361)
      at org.apache.jasper.compiler.Generator.generate(Generator.java:3461)
      at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:231)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
      at org.apache.jasper.compiler.Compiler.compile(Compiler.java:321)
      at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:592)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
      at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
      at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
      at com.preva.controller.OverspeedDBProcess.service(OverspeedDBProcess.java:86)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
      at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:879)
      at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:617)
      at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1760)
      at java.lang.Thread.run(Thread.java:722)
  </code></pre>
  
  <p>Controller like this </p>
  
  <pre><code>package com.preva.controller;
  
  import java.io.IOException;
  import java.io.PrintWriter;
  import java.text.SimpleDateFormat;
  import java.util.Calendar;
  import java.util.Date;
  import java.util.List;
  
  import javax.servlet.RequestDispatcher;
  import javax.servlet.ServletException;
  import javax.servlet.http.HttpServlet;
  import javax.servlet.http.HttpServletRequest;
  import javax.servlet.http.HttpServletResponse;
  import javax.servlet.http.HttpSession;
  
  import com.preva.dao.UserDAO;
  import com.preva.vo.OverspeedDetails;
  
  
  /**
   * Servlet implementation class OverspeedDBProcess
   */
  public class OverspeedDBProcess extends HttpServlet {
      private static final long serialVersionUID = 1L;
  
      /**
       * @see HttpServlet#HttpServlet()
       */
      public OverspeedDBProcess() {
          super();
          // TODO Auto-generated constructor stub
      }
  
      /**
       * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
       */
      protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
          // TODO Auto-generated method stub
      }
  
      /**
       * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
       */
      protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
          // TODO Auto-generated method stub
          try{
              response.setContentType("text/html");
              PrintWriter out=response.getWriter();
              HttpSession session=request.getSession(true);
              String accountID=(String)session.getAttribute("sessionId");
              String deviceID=request.getParameter("vehicleId");
              String fromDate=request.getParameter("AnotherDate");
              String toDate=request.getParameter("ADate");
  
              String stringspeed=request.getParameter("speed").substring(1,3);
              double speed=Double.parseDouble(stringspeed);
                 session.setAttribute("vid",deviceID);
              session.setAttribute("fromdate",fromDate);
              session.setAttribute("startdate",toDate);
              SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); 
              Date startD = (Date) sdf.parse(fromDate);
              Date endD = (Date) sdf.parse(toDate);
  
              Calendar cal1 = Calendar.getInstance();
              Calendar cal2 = Calendar.getInstance();
              cal1.setTime(startD);
              cal2.setTime(endD);
  
               long timestamp1,timestamp2;
               timestamp1=cal1.getTimeInMillis()/1000;
               timestamp2=cal2.getTimeInMillis()/1000;
              System.out.println("::::"+timestamp1);
              System.out.println("::::"+timestamp2);
              String Timestamp1 = Long.toString(timestamp1);
              String Timestamp2 = Long.toString(timestamp2);
  
  
  
              UserDAO rdao=new UserDAO();
              List&lt;OverspeedDetails&gt; overspeeddetail=rdao.getosDetails(accountID, deviceID, Timestamp1, Timestamp2,speed);
                           if(!(overspeeddetail.isEmpty())){
  
                               session.setAttribute("overspeeddetails", overspeeddetail);
                                   RequestDispatcher rd=request.getRequestDispatcher("OverspeedDBReport.jsp");
                                      rd.include(request,response);
                              return;
                           }  
                           RequestDispatcher rd=request.getRequestDispatcher("DataNotFound.jsp");
                              rd.include(request,response);
  
  
  
  
          }catch (Exception e) {
              // TODO: handle exception
          }
  
  
      }
      }
  </code></pre>
  
  <p>Jsp page like this </p>
  
  <pre><code>&lt;%@page contentType="text/html" pageEncoding="UTF-8"%&gt;
  &lt;%@ page import = "com.preva.vo.StoppageDetails"%&gt;
  &lt;%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%&gt;
  &lt;%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %&gt;
  &lt;%@ taglib uri="http://displaytag.sf.net" prefix="display" %&gt;
  &lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"&gt;
  &lt;html&gt;
  &lt;head&gt;
   &lt;meta http-equiv="Content-Type" content="text/html; charset=UTF-8"&gt;
  
  &lt;link href="css/cal.css" rel="stylesheet" type="text/css" /&gt;
  &lt;link href="css/sty.css" rel="stylesheet" type="text/css" /&gt;
  &lt;link href="css/tabborder.css" rel="stylesheet" type="text/css" /&gt;
  &lt;/head&gt;
  &lt;body&gt;
                   &lt;jsp:include page="Header.jsp" /&gt;
  
              &lt;table align=center border=0 cellspacing=0 cellpadding=0&gt;
              &lt;tr &gt;&lt;td colSpan=5 align=center&gt;&lt;b&gt;Overspeed Details&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
              &lt;tr &gt;&lt;td colspan=5 align=center&gt;&lt;b&gt;&lt;%=request.getParameter("vehicleId") %&gt;&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
              &lt;tr&gt;&lt;td&gt;From &amp;nbsp;&lt;%=session.getAttribute("fromdate") %&gt;&amp;nbsp;to&amp;nbsp;&lt;%=session.getAttribute("startdate") %&gt;&lt;/td&gt;&lt;/tr&gt;
  
              &lt;/table&gt;&lt;br&gt;&lt;/br&gt;
  
               &lt;table class='rptTbl_sortable' width='80%' align=center cellspacing='2' cellpadding='0' border='0'&gt;
  
            &lt;thead&gt;
            &lt;tr class="rptHdrRow"&gt;
           &lt;th id="index" class="rptHdrCol_sort" nowrap&gt;DeviceID&lt;/th&gt;
           &lt;th id="date" class="rptHdrCol_sort" nowrap&gt;Date&lt;/th&gt;
           &lt;th id="time" class="rptHdrCol_sort" nowrap&gt;Speed&lt;/th&gt;
           &lt;th id="statusdesc" class="rptHdrCol_sort" nowrap&gt;Status&lt;/th&gt;
                   &lt;th id="address" class="rptHdrCol_sort" nowrap&gt;Address&lt;/th&gt;
  &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
  &lt;display:table id="deviceDetailsID" name="sessionScope.overspeeddetails" pagesize="10" style="width:99%;"&gt;
   &lt;display:setProperty name="basic.empty.showtable" value="true" /&gt;
      &lt;display:setProperty name="paging.banner.group_size" value="10" /&gt;
      &lt;display:setProperty name="paging.banner.item_name" value="user" /&gt;
      &lt;display:setProperty name="paging.banner.item_names" value="users" /&gt;
  
      &lt;display:column property="deviceID" title="Device ID" sortable="true" headerClass="sortable" style="width: 1%"/&gt;
      &lt;display:column property="TIMESTAMP" title="TIMESTAMP" sortable="true" headerClass="sortable" format="{0,date,dd-MM-yyyy}"/&gt;
      &lt;display:column property="speed" title="Speed" sortable="true"/&gt;
      &lt;display:column property="statuscode" title="Status Code"/&gt;
      &lt;display:column property="address" title="Address" sortable="true" headerClass="sortable" /&gt;
  &lt;/display:table&gt; 
  
  
      &lt;/tbody&gt;            
  
  
              &lt;/table&gt; 
  
  
  &lt;/body&gt;
  </code></pre>