java.lang.NoClassDefFoundError: javax/el/ExpressionFactory

今天把写好的PDA程序放到测试服务器上,让测试人员帮忙测试,结果一起动tomcat窗口直接关闭了,于是去tomcat目录下的server.xml文件中查看,中docBase的路径是我自己机器上的,不是测试服务上的路径,原来的路径如下:





中docBase的路径是我本机上的路径
修改后如下:




起动tomcat,打开浏览器输入http://localhost:8088/sypda http status -/sypda/ 404 找不到页面,查看tomcat起动信息发现异常
validataJarFile -jar not loaded . See Servlet Spect 2.3,section 9.7.2 Offending class:
javax/servlet/Servlet.class
严重:Skipped installing application listeners due to previous errors
严重:Error listenerStart
严重:Context startup failed due to previous errors
严重:Error filterStart
于是打开tomcat找到webapps\sypda\WEB-INF\lib\javaee.jar文件,把这个文件剪切出来,起动tomcat,依然不能访问,还是出现404的错误
tomcat起动时的异常信息如下:
严重:Error filterStart
严重:Context startup failed due to previous errors
找不到是哪里的原因了,只能查询tomcat目录下logs文件下的日志信息,发现异常
java.lang.NoClassDefFoundError: javax/el/ExpressionFactory
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
Caused by: java.lang.ClassNotFoundException: javax.el.ExpressionFactory
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1340)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1189)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
感觉有点头绪了,把javaee.jar包放在tomcat中的common\lib目录下,起动tomcat,访问PDA程序,问题解决.

你可能感兴趣的:(J2EE开发)