zoukankan      html  css  js  c++  java
  • 《TomCat与Java Web开发技术详解》(第二版) 第六章节对应CD附带的helloapp无法启动的问题解决

    首先记录一下如何解决此章节CD中附带的helloapp无法启动的问题

    我用的tomcat版本是:7.0.47;为了便于控制,针对此章节的helloapp,我在tomcat/conf/Catalina/localhost中定义了helloapp6.xml文件,内容是:

    <Context path="/helloapp6" docBase="/media/Develop/WEB_Develop/TomCat+JAVADEV_CD/data/sourcecode/chapter06/helloapp" reloadable="true"/>,即实际helloapp文件位于/media/Develop/WEB_Develop/TomCat+JAVADEV_CD/data/sourcecode/chapter06/helloapp目录

    然后,启动tomcat,却发现此helloapp6无法启动。查看日志,发现有报错:Caused by: java.lang.NoClassDefFoundError: Lorg/apache/AnnotationProcessor

    通过查资料,找到如下解决方法:

    在/media/Develop/WEB_Develop/TomCat+JAVADEV_CD/data/sourcecode/chapter06/helloapp/src目录中建立文件:org/apache/AnnotationProcessor.java,其内容为:package org.apache;
    import java.lang.reflect.InvocationTargetException;
    import javax.naming.NamingException;

    public interface AnnotationProcessor {
        public void postConstruct(Object instance) throws IllegalAccessException, InvocationTargetException;
        public void preDestroy(Object instance) throws IllegalAccessException, InvocationTargetException;
        public void processAnnotations(Object instance) throws IllegalAccessException, InvocationTargetException, NamingException;
    }

    然后编译此文件,得到org/apache/AnnotationProcessor.class文件,在把此文件移位到:/media/Develop/WEB_Develop/TomCat+JAVADEV_CD/data/sourcecode/chapter06/helloapp/WEB-INF/classes/org/apache中即可

    然后,重新启动tomcat,则helloapp6就可以正常启动了

  • 相关阅读:
    批处理bat命令--获取当前盘符和当前目录和上级目录
    网页切图div+css命名规则
    Css 切换
    JavaScript的编码规范
    JavaScript原型继承添加方法属性
    使用cookie
    常见元素及其相关事件/创建弹出框
    在JavaScript中什么时候使用==是正确的?
    理解Null和Undefined
    Oracle一列的多行数据拼成一行显示字符
  • 原文地址:https://www.cnblogs.com/lagujw/p/3603979.html
Copyright © 2011-2022 走看看