Servlets Red5,java.lang.NoClassDefFoundError:javax/el/ExpressionFactory
我用red5(1.0.5)编写了一些flash应用程序。但我决定使用一个servlet来接收来自用户的音频文件(这次我不想使用flash)。我注意到我无法打开任何jsp。每次尝试打开一个servlet时,都会出现以下servlet异常:javax.servlet.ServletException:java.lang.NoClassDefFoundError:javax/el/ExpressionFactory。如果我重新加载页面,那么在几次尝试之后,我会得到一些不同的结果:java.lang.ClassNotFoundException:org.apache.jsp.index\u jsp,然后如果我再次重新加载,那么我提到的第一个异常会再次显示。感谢您的帮助。:) ServletServlets Red5,java.lang.NoClassDefFoundError:javax/el/ExpressionFactory,servlets,red5,Servlets,Red5,我用red5(1.0.5)编写了一些flash应用程序。但我决定使用一个servlet来接收来自用户的音频文件(这次我不想使用flash)。我注意到我无法打开任何jsp。每次尝试打开一个servlet时,都会出现以下servlet异常:javax.servlet.ServletException:java.lang.NoClassDefFoundError:javax/el/ExpressionFactory。如果我重新加载页面,那么在几次尝试之后,我会得到一些不同的结果:java.lang.C
package org.red5.core;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class Upload
*/
@WebServlet("/Upload")
public class Upload extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* Default constructor.
*/
public Upload() {
}
/**
* @see HttpServlet#doGet(HttpServletRequest request,HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
JSP
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>JSP</title>
</head>
<body>
<h1>JSP!</h1>
</body>
</html>
JSP
JSP!
例外情况
exception
javax.servlet.ServletException: java.lang.NoClassDefFoundError: javax/el/ExpressionFactory
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:348)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.red5.logging.LoggerContextFilter.doFilter(LoggerContextFilter.java:77)
root cause
java.lang.NoClassDefFoundError: javax/el/ExpressionFactory
org.apache.jasper.compiler.PageInfo.<init>(PageInfo.java:79)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:111)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:374)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:354)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:341)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:657)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
org.red5.logging.LoggerContextFilter.doFilter(LoggerContextFilter.java:77)
异常
javax.servlet.ServletException:java.lang.NoClassDefFoundError:javax/el/ExpressionFactory
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:348)
javaservlet.http.HttpServlet.service(HttpServlet.java:727)
org.red5.logging.LoggerContextFilter.doFilter(LoggerContextFilter.java:77)
根本原因
NoClassDefFoundError:javax/el/ExpressionFactory
org.apache.jasper.compiler.PageInfo.(PageInfo.java:79)
org.apache.jasper.compiler.compiler.generateJava(compiler.java:111)
org.apache.jasper.compiler.compiler.compile(compiler.java:374)
org.apache.jasper.compiler.compiler.compile(compiler.java:354)
org.apache.jasper.compiler.compiler.compile(compiler.java:341)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:657)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javaservlet.http.HttpServlet.service(HttpServlet.java:727)
org.red5.logging.LoggerContextFilter.doFilter(LoggerContextFilter.java:77)
检查您的red5/plugins目录,您可能缺少EL实现jar,通常名为:tomcat embed EL.jar您就是那个人!我下载了jar,现在我可以享受servlet特性的美妙。谢谢很高兴这对你有用,现在你应该标记这个答案。