zoukankan      html  css  js  c++  java
  • HTTP Status 500

    刚到公司实习,导入项目到eclipse中,部署到tomcat运行后,控制台报错

    java.lang.ClassCastException: org.apache.jasper.el.ELContextImpl cannot be cast to org.apache.jasper.el.ELContextImpl
    	org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:1023)
    	org.apache.jsp.index_jsp._jspService(index_jsp.java:85)
    	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:728)

    在网上搜了下,说是因为项目中lib中的jar包和tomcat下lib的jar冲突了,所以报
    java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor错误
    解决方案为:
    修改tomcat目录下的conf/context.xml如下:
    <?xml version='1.0' encoding='utf-8'?>
    <!--
      Licensed to the Apache Software Foundation (ASF) under one or more
      contributor license agreements.  See the NOTICE file distributed with
      this work for additional information regarding copyright ownership.
      The ASF licenses this file to You under the Apache License, Version 2.0
      (the "License"); you may not use this file except in compliance with
      the License.  You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
    -->
    <!-- The contents of this file will be loaded for each web application -->
    <Context>
        <Loader delegate="true" />

        <!-- Default set of monitored resources -->
        <WatchedResource>WEB-INF/web.xml</WatchedResource>

        <!-- Uncomment this to disable session persistence across Tomcat restarts -->
        <!--
        <Manager pathname="" />
        -->

        <!-- Uncomment this to enable Comet connection tacking (provides events
             on session expiration as well as webapp lifecycle) -->
        <!--
        <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
        -->

    </Context>
    加入了上面的粗体配置后,重启tomcat没有报错!

    但是,再一次启动tomcat时,还会报
    java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor
    非常疑惑,找到之前修改的配置文件
    context.xml,修改的内容没有了,配置文件重置了!
    最后,网上再次查找,解决方案如下:

    1. 在工作空间server 目录下查找tomcat 下面的context.xml 。我的路径是D:DevelopworkspaceServersTomcat v7.0 Server at localhost-config 。下面有 context.xml,修改此文件。

    2. 删除Tomcat 目录下server中catalina的相关项目。我的路径是D:apacheapache-tomcat-7.0.56workCatalinalocalhost 。将报错项目fund删除即可。

    下次重启Tomcat 时,此项目就使用新的context.xml 文件了。

    最后,完美解决问题!

    第二次更新,本来以上解决方法可以解决,但是好像重启tomcat后还是会不行!

    最终找到了终极解决方法!适用于eclispe

    新建Tomcat后,在Package Expplorer中会出现一个Servers的项目,如下图

     

    我们打开context.xml配置文件

    在这个文件中添加之前说的一句话

    最终,再没有出现过这个问题!

  • 相关阅读:
    sql mdf文件被破坏,ldf完好的情况下恢复数据库
    网站开发人员应该知道的61件事
    Myeclipse6.5中安装maven
    Java常用的一些正则表达式验证
    jQuery中$.ajax()方法中参数详解
    Pro Silverlight 3 in C# Layout
    Pro Silverlight 3 in C# XAML
    bugtracker.net 3.4.0 简易汉化手记+汉化文件下载
    IBatisNet In 参数配置方法
    Pro Silverlight 3 in C# XAML Resources
  • 原文地址:https://www.cnblogs.com/guodong-wang/p/7999289.html
Copyright © 2011-2022 走看看