【问题标题】:Custom tag libraries in JSP with Java EE 7使用 Java EE 7 在 JSP 中自定义标记库
【发布时间】:2018-07-10 19:08:37
【问题描述】:

我很难找到正确的方法来使用 Java EE 7 在 JSP 中实现我的自定义标签。我可以看到 web.xml 'taglig' 元素已经过时,Java EE 7 文档只讨论了 JSF 自定义标签实现,但不是 JSP。不幸的是,我没有机会转向 JSF。任何帮助是极大的赞赏。

【问题讨论】:

    标签: java jsp jakarta-ee custom-tags


    【解决方案1】:

    您可能需要更具体地了解您的自定义标签用例。 定义自定义标签的最简单方法是定义 .tag 文件(扩展名为 .tag 的 JSP 类型)并将其放入 {yourapp}/WEB-INF/tags/{dir}

    例如

    我在 WEB-INF/tags/custom 中有一个 custom.tag

    <%@attribute name="greetName" type="java.lang.String"%>
    <div>Hello, ${greetName }</div>
    

    在我的 index.jsp 中

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@taglib tagdir="/WEB-INF/tags/custom" prefix="ctm" %>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>JSP in EE7</title>
        </head>
        <body>
            <div>Before tag</div>
            <ctm:custom greetName="John"></ctm:custom>
            <div>After tag</div>
        </body>
    </html>
    

    输出:

    还有使用java代码定义标签的方法: 1.在WEB-INF中创建一个.tld文件 2.扩展BodyTagSupportSimpleTagSupport

    .tag 文件非常适合重用 html 的某些片段,如果您需要更大的灵活性,可以扩展 *TagSupport 类。

    【讨论】:

      猜你喜欢
      • 2015-01-27
      • 2010-12-10
      • 1970-01-01
      • 2016-07-05
      • 2011-04-16
      • 1970-01-01
      • 2015-04-02
      • 2014-05-11
      • 1970-01-01
      相关资源
      最近更新 更多