今天晚上学习SSH,发现一个el表达式在JSP2.0中不起作用的问题。反复调试多次,发现是web.xml中出了问题。猜测是版本的问题,但只知道了如何修改,不知道为什么那样修改。停止工作后看别人博客,很幸运的发现了原因。
tomcat5.0的版本, 使用了低版本,只求稳定。
web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
2.4版本默认启用el表达式,如果使用2.5版本,默认el表达式是关闭的
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
那么对应2.5的web.xml --> jsp页面里应该增加<%@ page isELIgnored="false"%>
一句话,凡是部署描述文件遵循Servlet2.4规范的WEB应用,EL表达式的计算默认是启用的,而未遵循的,则EL表达式的计算默认是禁用的。
所以解决方案还可以是:将web.xml中的DTD(文档类型定义)改问2.4的版本
分享到:
相关推荐
通过以上步骤,大多数EL表达式不起作用的问题应该能得到解决。在调试过程中,利用日志记录和断点调试工具可以帮助定位问题的具体原因。如果问题依然存在,可能需要进一步深入分析项目结构和依赖关系,以找出隐藏的...
自定义EL表达式极大地扩展了JSTL的能力,使开发者能够创建符合项目需求的定制化解决方案,同时保持代码的简洁和规范。通过深入理解和实践自定义EL表达式,你可以更好地驾驭JSTL,提升Java Web应用的开发效率和质量。
一种解决方案是将 JavaScript 文件改为 JSP 文件,然后在 JSP 文件中引入 EL 表达式。这样,在服务端执行 EL 表达式后,结果将被传递给客户端的 JavaScript。 例如,我们可以在 JSP 文件中编写以下代码: ```jsp ; ...
通过本文的分析与解决方案,我们可以更好地理解如何解决EL表达式未被解析的问题,避免类似错误的发生。同时,对于新手开发者来说,熟悉Maven的基本用法以及Web规范的不同版本之间的差异也是十分必要的。
本文将详细解析这个问题,并提供解决方案。 首先,让我们看一个简单的JSP页面示例: ```jsp ;charset=UTF-8" language="java" %> <title>Title ${userList }" var="lists"> ${lists.username } ${lists....
**常见问题与解决方案**: 1. **EL 识别问题**:如果 JSP 页面无法识别 EL 表达式,检查 `web.xml` 配置是否正确,同时确保 JSP 页面没有显式禁用 EL。 2. **IDE 配置**:在使用 IDE(如 IntelliJ IDEA)开发时,...
通过上述解决方案,可以有效避免JSP页面中的EL表达式被当作字符串处理的问题。在实践中,开发者应根据项目需求和技术背景,合理配置`isELIgnored`属性,同时注意性能优化和代码可维护性,以确保应用的高效稳定运行。
### 解决方案:配置Web应用的web.xml 为了使Tomcat 5.5.28支持EL表达式,首先需要修改部署目录下的`web.xml`文件。具体操作如下: 1. **定位web.xml文件**:在你的Web应用的`WEB-INF`目录下找到`web.xml`文件。...
本文将深入探讨EL表达式的基本概念、可能出现的问题及其解决方案,并结合提供的`jstl.jar`和`standard.jar`这两个关键库文件,来进一步理解它们在处理EL表达式中的作用。 EL表达式是JavaServer Pages(JSP)2.0引入...
但在某些情况下,可能会遇到JSP不支持EL表达式的问题,本文将详细介绍这一问题及其解决方案。 #### 一、问题背景与原因分析 EL表达式的支持与JSP版本密切相关。根据描述中的信息,“默认情况下,Servlet2.3/JSP1.2...
1. **当变量未定义时**:如果在EL表达式中引用的变量没有在当前作用域内被定义,那么`empty`操作符将返回`true`。 2. **当变量值为`null`时**:如果变量已经被定义,但其值为`null`,`empty`操作符同样会返回`true...
在JSP开发中,EL(Expression Language)表达式是一种强大的工具,用于简化页面中的数据访问。然而,有时候可能会遇到EL表达式被当作普通字符串...当遇到此类问题时,检查配置和遵循最佳实践通常是找到解决方案的关键。
这通常是因为JSP的配置不正确,导致EL表达式被当作普通文本处理。 首先,解决这个问题的一个方法是在JSP页面头部设置 `isELIgnored` 属性为 `false`。这是一个关键的开关,当设置为 `false` 时,JSP引擎会解析并...
如果这两种方法都尝试过后仍然存在问题,可能需要进一步检查服务器配置或寻求其他可能的解决方案。如果读者有其他未尝试过的方法,也欢迎提供和分享,以便更好地解决EL表达式不被解析的问题。在处理这类问题时,理解...
在Java Web开发中,EL(Expression Language)表达式是一种强大的工具,用于在JSP页面中访问和操作JavaBean或其他作用域中的对象。...最后,根据具体情况选择合适的解决方案,以确保应用的稳定性和安全性。
"JavaEE+JDBC+Servlet+EL表达式的员工信息管理系统"是一个利用Java企业版技术栈开发的应用,它结合了Servlet来处理用户请求,JDBC来操作数据库,以及EL简化视图层的数据展示,共同构建了一个高效、可靠的员工信息...
EL表达式语言借鉴了JavaScript的多类型转换无关性的特点,支持在不进行显式类型转换的情况下从各种不同的上下文中获取数据。在Web应用中,服务器通常会将请求参数作为字符串发送,而在Java代码中需要使用这些参数时...
本文将深入探讨两种可能导致此类异常的情况,并提供相应的解决方案。 ### 情况一:对象属性不存在 EL表达式尝试访问的对象没有定义所查找的属性。例如,假设我们有以下Java Bean: ```java public class User { ...
除了上述基本的过滤器解决方案,还可以根据实际项目需求进行更复杂的编码管理,例如,针对不同的请求路径或HTTP方法设置不同的编码,或者在处理文件上传时考虑文件名的编码问题。 此外,对于"中文乱码问题.txt"这样...
### JSTL与EL的关系详解 #### 引言 在探讨JSTL(JSP Standard Tag Library,JSP标准...无论是数据的处理、格式化还是数据库操作,JSTL与EL的结合都能提供简洁、高效的解决方案,是现代Java Web开发不可或缺的一部分。