【问题标题】:Upgrade JBoss 5.1 from EL 2.1 to EL 2.2?将 JBoss 5.1 从 EL 2.1 升级到 EL 2.2?
【发布时间】:2011-07-29 18:34:24
【问题描述】:

这个问题又快又简单。

JBoss 5.1 开箱即用,支持 JSP 和 EL(表达式语言)2.1 和 Servlet 2.5。

是否可以升级或破解它以使用 EL 2.2?

更新:

我尝试了 BalusC 的回答并得到以下错误:

2011-08-01 10:29:52,418 严重 [javax.enterprise.resource.webcontainer.jsf.config](主要)无法实例化 ExpressionFactory 'org.jboss.el.E​​xpressionFactoryImpl' 2011-08-01 10:29:52,441 严重 [javax.enterprise.resource.webcontainer.jsf.config](主要)部署期间的严重错误: com.sun.faces.config.ConfigurationException:容器的 JSP 版本似乎早于 2.1,并且无法找到 EL RI 表达式工厂 com.sun.el.E​​xpressionFactoryImpl。如果不使用 JSP 或 EL RI,请确保正确设置上下文初始化参数 com.sun.faces.expressionFactory。

我不确定这意味着什么或如何解决它。为什么会认为有2.1以下的JSP版本?

【问题讨论】:

  • 我怀疑升级 JBoss 本身可能会更容易。
  • @skaffman,不是客户的选择。他们宁愿破坏旧版本的 JBoss 5.1。感谢您的提问。

标签: jakarta-ee jboss el jboss5.x


【解决方案1】:

不,虽然替换库是微不足道的,但您毕竟必须重新声明 web.xml 符合 Servlet 3.0 才能使其工作。如果不将其所有库替换为与 JBoss 6.0(Servlet 3.0 实现)中的相同,JBoss 5.1(这是一个 Servlet 2.5 实现)将无法识别这一点。将整个系统升级到 JBoss 6.0 会更容易。

我了解到您正在使用 JSF 2.0(查看旧问题标签时)。如果唯一的功能要求是支持 JSF 支持 bean 操作方法调用,尽可能使用 EL 2.2 中的参数,那么最好的办法是在 webapp 的 /WEB-INF/lib 中删除 JBoss-EL JAR 文件的副本并添加以下上下文参数到您的 webapp 的 web.xml,假设您使用的是 Mojarra。

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

不,不可能在 JBoss 级别配置它。您真的必须在 webapp 级别进行操作。有关 JBoss EL 的更多信息(它是在 EL 中使用参数调用方法的发起者),check chapter 34 of the Seam documentation

【讨论】:

  • 哇!谢谢,这就是我正在寻找的建议!是的,我可以在网络应用程序级别执行此操作。我会试试这个,让你知道它是否有效。
  • 我尝试了您的建议,但在应用程序启动时出现错误,请参阅我更新的问题。
  • 声明的web.xml 是否符合Servlet 2.5?它至少应该是 2.5,它与 JSP 2.1 齐头并进。您是否使用 Facelets 作为视图技术? JBoss EL 仅适用于 Facelets,不适用于 JSP。 JSP 2.1 要求实际上具有误导性,JBoss EL impl 需要 EL 2.1 API,它是 JSP 2.1 API 的一部分。
  • 我犯了一个愚蠢的错误,我有一个用于jboss-EL-2.2-spec.jar 的流氓JAR 文件,不久前我在尝试这样做时手动将其放入common/lib。我删除了它,它确实有效!你是JSF的神!谢谢!
  • 这仍然有效,我只是想知道你是否能告诉我 jar 文件 jboss-el-2.0.0.GA.jar 的来源?我想知道在哪里可以找到指向此 JAR 的永久链接,以防 Atlassian 取消链接或停止使用 Maven 等...
猜你喜欢
  • 2018-03-18
  • 2016-11-03
  • 2011-11-04
  • 1970-01-01
  • 2013-04-15
  • 2019-12-25
  • 2021-09-13
  • 2016-07-15
相关资源
最近更新 更多