无法找到 EL RI 表达式工厂

发布于 2024-10-15 05:30:35 字数 317 浏览 3 评论 0原文

我在我的应用程序中遇到以下异常。

com.sun.faces.config.ConfigurationException: 看来JSP版本的 容器早于 2.1 并且无法 定位 EL RI 表达式 工厂, com.sun.el.E​​xpressionFactoryImpl。如果 不使用 JSP 或 EL RI,请确保 上下文初始化参数, com.sun.faces.ExpressionFactory,是 正确设置。

如何在 web.xml 中设置 EL 详细信息。

I am getting the following exception in my application.

com.sun.faces.config.ConfigurationException:
It appears the JSP version of the
container is older than 2.1 and unable
to locate the EL RI expression
factory,
com.sun.el.ExpressionFactoryImpl. If
not using JSP or the EL RI, make sure
the context initialization parameter,
com.sun.faces.expressionFactory, is
properly set.

How to set the EL details in the web.xml.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

少跟Wǒ拽 2024-10-22 05:30:35

例外情况表明需要 JSP 2.1。您需要确保您的 web.xml 声明为 Servlet 2.5 或更高版本,并且您的 servlet 容器支持它(Tomcat 6、Glassfish 2、JBoss AS 5 等或更高版本)。 JSP 2.1 与 Servlet 2.5 齐头并进。正确声明的 Servlet 2.5 的 web.xml 开头如下:

<?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"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">

    <!-- Config here. -->

</web-app>

如果您使用旧版本的 servletcontainer,而您确实无法升级到至少兼容 Servlet 2.5 的容器,那么您需要让我们知道首先是哪一个,以便我们可以发布更合适的答案/解决方法。

The exception is telling that JSP 2.1 is required. You need to ensure that your web.xml is declared as Servlet 2.5 or newer, and that your servletcontainer supports it (Tomcat 6, Glassfish 2, JBoss AS 5, etc, or newer). JSP 2.1 goes hand in hand with Servlet 2.5. A proper Servlet 2.5 declared web.xml starts as follows:

<?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"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
    version="2.5">

    <!-- Config here. -->

</web-app>

If you're using an older versioned servletcontainer which you can really not upgrade to at least a Servlet 2.5 compatible one, then you need to let us know first which one it is so that we can if possibly post more suited answers/workarounds.

为你鎻心 2024-10-22 05:30:35

这是因为最新的 el jar 不在类路径中。
它也对我有用

(参考)请参考链接
JSF 2.0 + Tomcat :看来容器的 JSP 版本早于 2.1...

This is because latest el jar is not in classpath.
It worked for me too

(Reference)Please refer the link
JSF 2.0 + Tomcat : It appears the JSP version of the container is older than 2.1…

蝶…霜飞 2024-10-22 05:30:35

将以下内容添加到 Web.xml,它对我有用。

<context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>

Add the following to the Web.xml, it worked for me.

<context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
甲如呢乙后呢 2024-10-22 05:30:35

您可以尝试删除 Web.xml 中的以下内容,它对我有用。

<context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>

you can try to remove following in Web.xml , it worked for me.

<context-param>
    <param-name>com.sun.faces.expressionFactory</param-name>
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文