JSF 2中的f:selectItems与JSF 1组件库EasySi中的selectItems完全相同吗?

时间:2017-05-04 08:17:02

标签: jsp jsf jsf-2 facelets

我正在将旧的JSF 1 Web应用程序升级到JSF 2(特别是从MyFaces 1.1升级到MyFaces 2.2.12)。旧的应用程序使用JSP,我现在用Facelets替换它。我主要使用Migrating from JSF 1.2 to JSF 2.0作为指南。

在旧版Web应用程序中使用了一些组件库,Facelets中似乎不支持这些组件库,我需要找到合适的替代品。

其中一个是" EasySi"来自JSF-Comp project的标签。我们使用" selectItems"来自该库的标记,但根据PrimeFaces论坛this thread中的最后一个答案,EasySi默认只支持JSP。

根据JSF 2.2/Facelets documention of selectItems,自版本2以来,核心库中的selectItems标记专门支持itemValueitemLabel属性(以及其他属性)。这些是属性我们在旧的JSP模板中使用了EasySi版本的selectItems

所以,我的问题是:

JSF 2核心标记库中的selectItems是否与JSF 1组件库EasySi中的selectItems具有完全相同的功能?换句话说,我可以替换像

这样的东西
<%@ taglib uri="http://sourceforge.net/projects/jsf-comp/easysi" prefix="si" %>
<%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t" %>

    ...

    <t:selectOneMenu>
        <si:selectItems value="#{someExpression}" var="item" itemLabel="#{item}" itemValue="#{item}"/>
    </t:selectOneMenu>

在JSF 1 JSP模板中,类似于

<!DOCTYPE html>
<html
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:f="http://xmlns.jcp.org/jsf/core"
    xmlns:t="http://myfaces.apache.org/tomahawk">

    ...

    <t:selectOneMenu>
        <f:selectItems value="#{someExpression}" var="item" itemLabel="#{item}" itemValue="#{item}"/>
    </t:selectOneMenu>

在我的Facelet中,并期望与以前相同的行为?

0 个答案:

没有答案