0

我们使用Jakarta Taglibs输出一些基本的 HTML 表单元素,例如选择。看来这个图书馆已经退役了..有没有好的替代品?寻找一些简单的东西,它将采用 JavaMap并将其输出到 HTML。

4

2 回答 2

2

您可以为此使用JSTL 。 <c:forEach>每次迭代都会给出一个Map.Entryback ,它又具有getKey()getValue()方法。假设您有一个Map<String, String>选项值作为映射键和选项标签作为映射值,这里有一个例子:

<select name="foo">
    <c:forEach items="${bean.map}" var="entry">
        <option value="${entry.key}" ${entry.key == param.foo ? 'selected' : ''}>${entry.value}</option>
    </c:forEach>
</select>

至于旧版 Jakarta 标签库的替换,请查看 MVC 框架,它提供标签库以将模型与视图绑定。例如Struts 1.x(实质上是遗留 Jakarta taglib 的轻微演变)、Struts 2.x(进一步演变)和JSF(与 Struts 2.x 相同方向的另一个演变)。

这是一个如何<select>在 JSF 中呈现 HTML 的示例。

<h:selectOneMenu id="foo" value="#{bean.selectedItem}">
    <f:selectItems value="#{bean.selectItems}" />
</h:selectOneMenu>

JSF 将它与模型透明地绑定,而无需编写您自己的控制器(servlet)。

于 2010-10-26T00:57:58.963 回答
1

这个项目已经退出阁楼,因为几乎所有功能都可以使用嵌入在应用程序服务器中的标准实现来获得。

http://attic.apache.org/projects/jakarta-taglibs.html

这个项目在http://tomcat.apache.org/taglibs/

于 2010-10-26T00:58:26.227 回答