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就可以正常启动了

  • 相关阅读:
    281. Zigzag Iterator
    298. Binary Tree Longest Consecutive Sequence
    482. License Key Formatting
    361. Bomb Enemy
    373. Find K Pairs with Smallest Sums
    304. Range Sum Query 2D
    308. Range Sum Query 2D
    307. Range Sum Query
    303. Range Sum Query
    247. Segment Tree Query II
  • 原文地址:https://www.cnblogs.com/lagujw/p/3603979.html
Copyright © 2011-2022 走看看