当我学习ServletContextListener时,我无法弄清楚为什么会发生ClassNotFoundException

时间:2017-05-27 13:45:18

标签: java java-ee web

ClassNotFoundException

  1. platform:eclipse_ee_mars + tomcat8.5
  2. SimpleServletContext主要检查属性。
  3. 这是我的SimpleServletConetxtListenerCode

    package zhang.listenerandfilter;
    import java.util.Date;
    import javax.servlet.ServletContext;
    import javax.servlet.ServletContextAttributeEvent;
    import javax.servlet.ServletContextAttributeListener;
    import javax.servlet.ServletContextEvent;
    import javax.servlet.ServletContextListener;
    public abstract class SimpleServletContextListener 
    implements ServletContextListener , ServletContextAttributeListener{
    @Override
    public void contextInitialized(ServletContextEvent sce) {
        System.out.println("Start Time:" + new Date());
    }
    @Override
    public void contextDestroyed(ServletContextEvent arg0) {
        System.out.println("Stop Time:" + new Date());
    
    }
    @Override
    public void attributeAdded(ServletContextAttributeEvent scae) {
        System.out.println("Added an Attribute:" + scae.getName() + "=" + scae.getValue());
    }
    
    @Override
    public void attributeRemoved(ServletContextAttributeEvent scae) {
        System.out.println("Removed an Attribute:" + scae.getName() + "=" + scae.getValue());
    }
    
    @Override
    public void attributeReplaced(ServletContextAttributeEvent scae) {
        ServletContext sc = scae.getServletContext();
        System.out.println("Replaced an Attribute(Old):" + scae.getName() + "=" + scae.getValue());
        System.out.println("(New):" + scae.getName() + "=" + sc.getAttribute(scae.getName()));
    }
    

    }

  4. 这是我的web.xml

    <listener>
        <listener-class>zhang.listenerandfilter.SimpleServletContextlistener</listener-class>
    </listener>
    

    my project dirctory tree

1 个答案:

答案 0 :(得分:1)

你的课程是抽象的,无法实例化,所以可能是问题所在。