`
carel
  • 浏览: 2339 次
  • 性别: Icon_minigender_2
  • 来自: 兰州
最近访客 更多访客>>
社区版块
存档分类
最新评论

Struts中el表达式不解析

阅读更多
jsp页面中的EL表达式不被解析的问题作者:深圳金格朗科技有限公司  来源:博客园  发布时间:2011-06-08 10:54  阅读:2 次  原文链接   [收藏]  
     在使用jsp的el表达式时,发现tomcat 5对其不解析。按原样输出如${items}.
原样把tomcat 的jsp例子拷过来还是如此。web.xml里和lib里的配置都配好了。找了很久才发现web.xml文件使用的是servlet 2.3版本的声明的问题。el在servlet 2.3中默认是不启用的。

servlet 2.3的

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
  PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'
  'http://java.sun.com/dtd/web-app_2_3.dtd'>

<web-app id="WebApp_ID">
tomcat自带的 servlet 2.4的。

<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">
把web.xml的声明部分改为2.4的即可。
还有就是如果使用了<taglib>标签就需要加<jsp-config>父标签。具体内容看jsp2.0和servlet2.4规范

<jsp-config>
  <taglib>
    <taglib-uri>/tags/struts-bean.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
  </taglib>
  </jsp-config>

     在使用jsp的el表达式时,发现tomcat 5对其不解析。按原样输出如${items}.
原样把tomcat 的jsp例子拷过来还是如此。web.xml里和lib里的配置都配好了。找了很久才发现web.xml文件使用的是servlet 2.3版本的声明的问题。el在servlet 2.3中默认是不启用的。

servlet 2.3的

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app
  PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'
  'http://java.sun.com/dtd/web-app_2_3.dtd'>

<web-app id="WebApp_ID">
tomcat自带的 servlet 2.4的。

<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">
把web.xml的声明部分改为2.4的即可。
还有就是如果使用了<taglib>标签就需要加<jsp-config>父标签。具体内容看jsp2.0和servlet2.4规范

<jsp-config>
  <taglib>
    <taglib-uri>/tags/struts-bean.tld</taglib-uri>
    <taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
  </taglib>
  </jsp-config>

分享到:
评论

相关推荐

    表达式与言EL和OGNL

    当用户提交表单后,Struts 2会使用OGNL解析这些表达式,将数据保存到对应的模型对象中,如`getUser().setUsername()`。而在显示用户信息时,同样可以通过OGNL表达式获取数据,如`getUser.getUsername()`。 **值堆栈...

    实现通过EL获取用户的注册信息

    控制器会从数据库查询用户信息,然后将结果放入模型(Model),再由Spring MVC或者Struts2等框架自动绑定到JSP页面上的EL表达式。 EL表达式的优势在于简化了JSP页面的代码,使其更专注于展示逻辑,而不是数据访问...

    Struts2 如何使用OGNL表达式(三十八)

    因此,开发者应使用Struts2的安全配置选项,如禁用不安全的OGNL表达式,或者使用`@SkipValidation`注解来限制某些Action方法的OGNL表达式执行。 总结来说,Struts2中的OGNL表达式是连接模型和视图的关键工具,它...

    struts2标签和OGNL表达式.pdf

    OGNL(Object-Graph Navigation Language)是一种功能强大的表达式语言,用于获取和设置Java对象的属性,它广泛应用于Struts2框架中用于数据访问和表达式的解析。OGNL表达式提供了简洁的语法来访问和操作对象图,...

    struts2综合复习习题

    - 正确答案为 **B.struts标签可以结合EL表达式灵活存取上下文环境中的数据**。 - Struts2标签库提供了丰富的标签用于简化页面开发,这些标签支持使用EL表达式来访问应用中的数据。因此,选项B是正确的。至于其他选项...

    OGNL表达式

    - **$**:在JSP页面中表示EL表达式的开头,但在Struts2中通常不直接使用,而是通过#符号配合使用。 #### 五、示例代码详解 为了更好地理解OGNL表达式的使用,我们来看一个具体的示例。假设我们在开发一个简单的Web...

    混用JSTL及EL和Struts.txt

    此外,如果使用Struts框架,还需要确保在`/WEB-INF/lib`目录下有Struts和相关EL的库文件,以便正确解析EL表达式。 #### 在Struts中使用EL 当在Struts项目中使用EL时,需要注意的是Struts的配置也需要支持EL。在`...

    struts开发所用七个jar包

    Struts-EL JAR提供了对EL的支持,使得开发者可以在ActionForm和ActionContext中使用EL表达式。 5. **struts-taglib-x.x.x.jar**:这个文件包含了一系列的自定义JSP标签,它们简化了在JSP页面上实现Struts功能的过程...

    Java表达式攻防下的黑魔法-release

    - EL表达式的解析和执行过程涉及到多个类和方法的调用。以`PageContextImpl.proprietaryEvaluate`方法为例,该方法内部会调用到`AstValue.getValue`方法,进而调用到`JasperELResolver.invoke`方法,最后通过反射...

    struts各种包下载.rar

    3. **Struts Plugins**:Struts有许多插件,如Struts-El、Struts-Test等,它们提供了额外的功能,如EL表达式语言支持、单元测试集成等。 4. **Commons Libraries**:Struts依赖于Apache Commons系列的库,如Commons...

    struts2配置文件以及代码示例

    #### 三、Struts2中的EL表达式和JSTL **EL表达式:** 在Struts2中,可以使用EL表达式来访问JavaBean的属性。EL表达式遵循如下规则: - EL表达式通过`$`或`${}`的形式来引用属性。 - 可以使用`.`或`[]`语法来访问对象...

    struts最少依赖jar包

    10. **jsp-api.jar**:包含JSP运行所需的API,比如JSP标签、EL表达式等。 11. **jstl.jar** 和 **standard.jar**:JSTL(JavaServer Pages Standard Tag Library)提供了标准的JSP标签库,可以替代部分自定义JSP...

    struts学习幻灯片

    6. JSP页面展示结果,可能通过ValueStack与Struts的EL表达式来访问模型数据。 Struts还引入了Tiles框架,提供更灵活的视图组织方式。Tiles允许开发者创建可重用的页面组件,通过定义模板布局和组合组件来构建复杂的...

    struts的九个必备常用包

    7. **struts-el**:支持表达式语言(EL,Expression Language)的标签库,EL是一种轻量级的脚本语言,常用于JSP页面中,用于访问JavaBean属性或执行简单的运算。 8. **struts-faces**:如果项目中使用了JSF(Java...

    Tomcat5.5 for Struts几个jar包

    8. **struts-el.jar**(如果使用EL表达式语言):提供对Expression Language(EL)的支持。 9. **commons-logging.jar**:Struts使用Apache Commons Logging进行日志记录,这个库是必需的。 10. **commons-...

    struts 1 例子

    通过对这些例子的探索,开发者可以深入理解Struts 1的运作机制,掌握如何编写Action类、配置struts-config.xml文件、利用标签库构建用户界面,以及如何在实际项目中整合其他技术,如EL表达式语言。这些都是构建基于...

Global site tag (gtag.js) - Google Analytics