2

我正在尝试为我的 JSF 应用程序提供自定义资源包,因此我在faces-config.xml一个子类中创建并注册了一个javax.faces.application.ApplicationFactory提供Application简单方法的子类,该方法只是记录对Application资源包的访问:

  @Override
  public ResourceBundle getResourceBundle(FacesContext ctx, String name) {
    ResourceBundle result = super.getResourceBundle(ctx, name);
    logger.log(Level.INFO, "{0} : {1}", new Object[]{name, result});
    return result;
  }

出乎意料的是,我发现以下 XTML 代码

 <ui:repeat value="#{bean.itemList}" var="item">
   <li><h:outputText value="#{item}"/></li>
 </ui:repeat>

正在触发该getResourceBundle方法,询问是否有一个名为item.

问题是这是否是预期的行为以及如何将此类调用与那些要求ResourceBundle而不是要求 EL 变量的调用区分开来。

4

0 回答 0