【问题标题】:Can multiple EL resolver use in JSF 2.0?可以在 JSF 2.0 中使用多个 EL 解析器吗?
【发布时间】:2012-10-05 01:33:22
【问题描述】:

我想了解 JSF 中的 EL 解析器。我们可以在一个项目中使用多个 EL 解析器吗?比方说,如果我使用 Spring 的 DelegatingVariableResolver,我是否可以添加另一个 EL 解析器,例如 Seam 的 SeamELResolver

我的期望是,DelegatingVariableResolver 在翻译过程中遇到错误或异常时委托另一个 EL 解析器。

【问题讨论】:

  • 看起来可以根据这个 jboss 社区thread 通过扩展CompositeELResolver 来拥有多个 el 解析器,除非您的标准与原始 OP 在使用自定义 el 解析器时遇到问题的标准相同想要的地方。
  • 这可能有帮助。techblog.bozho.net/?p=165
  • @SRy 绝对正确。 CycDemo 看看 BalusC 回答我的问题:answer

标签: java jsf-2 el


【解决方案1】:

DelegatingVariableResolver 自 Spring 3.2 起已弃用,那么是的,您可以将多个 ElResolver 声明为:

<application>
    <el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>     
    <el-resolver>com.agitech.erp.bean.BeanResolver</el-resolver>    
  <locale-config>
   <default-locale>fr</default-locale>
  </locale-config>
 </application>
public class BeanResolver extends javax.el.ELResolver {
........
}

如果您使用 MyFaces,您可以选择自定义解析器的订购方式

<context-param>
    <param-name>org.apache.myfaces.EL_RESOLVER_COMPARATOR</param-name>
    <param-value>org.apache.myfaces.el.unified.CustomLastELResolverComparator</param-value>
</context-param>

【讨论】:

    猜你喜欢
    • 2012-02-10
    • 2015-01-22
    • 2012-02-20
    • 2012-09-11
    • 1970-01-01
    • 2012-02-06
    • 1970-01-01
    • 2019-11-27
    • 2013-06-13
    相关资源
    最近更新 更多