如何检查服务器使用的 EL 版本。
我正在运行 Websphere 7 。 EL 类在 j2ee.jar 中, list 在下面。
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.6.5
Created-By: 2.4 (IBM Corporation)
Specification-Title: Java Platform, Enterprise Edition Specification
Specification-Version: 5.0
Specification-Vendor: Sun Microsystems, Inc.
Implementation-Title: Java Platform, Enterprise Edition Specification
Implementation-Version: 5.0
Implementation-Vendor: Sun Microsystems, Inc.
Class-Path: activation-impl.jar mail-impl.jar
最佳答案
EL 版本与 Servlet/JSP 版本密切相关,后者依赖于所使用的 servletcontainer 实现/版本以及 web.xml
您的 web 应用程序的根声明。
WebSphere 7 是一个 Java EE 5 认证的容器,这意味着 Servlet 2.5 又与 JSP/EL 2.1 一起提供。但是,如果
web.xml
您的 webapp 声明符合例如 Servlet 2.4,那么您的 webapp 将使用 JSP/EL 2.0 以 Servlet 2.4 模式运行。由于您标记了这个 JSF,我想这个问题的唯一目的是弄清楚您是否可以使用新的 EL 2.2 特性,即能够在 EL 中使用参数调用非 getter 方法。因此,您的容器本身并不支持。但是,您可以安装 JBoss EL根据 this answer让它在 Servlet 2.5 容器上工作。
也可以看看:
关于jsf - 如何检查服务器使用的是哪个版本的 EL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7237000/