如何在 JSP taglib中定义示例元素?

发布于 2024-08-14 20:25:32 字数 504 浏览 4 评论 0原文

我目前正在编写一堆 JSP 标签供我们的设计人员使用。在我的 .tld 文件中,我有一些 和更多 元素。

现在,我想向标签库的用户提供一些如何使用它们的示例。根据Sun 的文档< tag-file> 元素允许有一个 元素。

这对于 效果很好,但是每当我尝试将示例放入 时,Eclipse 和 Tomcat 都会抛出错误。

有人有这方面的经验吗?

I'm currently writing a bunch of JSP tags for our designers to use. In my .tld file I have some <tag> and many more <tag-file> elements.

Now, I want to give the users of the tag library some examples about how to use them. According to Sun's documentation both <tag-file> and <tag> elements are allowed to have an <example> element.

This works fine for <tag>, but whenever I try to put an example in <tag-file> both Eclipse and Tomcat throw an error.

Anybody got experience with this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

二智少女猫性小仙女 2024-08-21 20:25:32

元素是在 Servlet 2.4 / JSP 2.0 中引入的。

除了如下所示将 taglib 根声明为 JSP taglib 2.0 之外,

<taglib 
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
    version="2.0">

您是否还使用支持 Servlet 2.4 / JSP 2.0 的应用程序服务器?例如 Tomcat 5.x 或更高版本。如果没有,那么您需要升级。如果是这样,那么这个问题是:web.xml 中是否声明了正确的 Servlet 版本(至少 2.4)?如果没有,那么请确保您这样做:

<web-app 
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

或者,如果您已经在使用支持 Servlet 2.5 的应用程序服务器(例如 Tomcat 6.x),那么只需声明 Servlet 2.5 是最新的:

<web-app 
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd"
    version="2.5">

如果您不这样做如果您不想升级应用程序服务器或更改 web.xml 中的 Servlet API 版本声明,那么您需要接受无法使用 的事实元素。

The <example> element was introduced in Servlet 2.4 / JSP 2.0.

Apart from declaring the taglib root as JSP taglib 2.0 like follows

<taglib 
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd"
    version="2.0">

are you also using an appserver which is capable of Servlet 2.4 / JSP 2.0? For example Tomcat 5.x or newer. If not, then you need to upgrade. If so, then this question: is a proper Servlet version (at least 2.4) been declared in web.xml? If not, then ensure that you're doing so:

<web-app 
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">

or, if you're already using a Servlet 2.5 capable appserver (for example Tomcat 6.x) then just declare Servlet 2.5 to be the best up to date:

<web-app 
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_5.xsd"
    version="2.5">

If you don't want to upgrade the appserver or to change the Servlet API version declaration in web.xml, then you need to live with the fact that you cannot use the <example> element.

花开柳相依 2024-08-21 20:25:32

它适用于 Tomcat 6.0。这是我的文件,

<tagtoc name="Configuration Components">
  <tag-file>
    <description>Get configured value</description>
    <display-name>get</display-name>
    <name>get</name>
    <path>/META-INF/tags/config/get.tag</path>
    <example>
       <![CDATA[
               <config:get key="username" echo="true" />
      ]]>
      <usage>
        <comment>
          <p>
            See config-test.jsp in the example application.
          </p>
        </comment>
      </usage>
    </example>
  </tag-file>

...

It works for me on Tomcat 6.0. Here is my file,

<tagtoc name="Configuration Components">
  <tag-file>
    <description>Get configured value</description>
    <display-name>get</display-name>
    <name>get</name>
    <path>/META-INF/tags/config/get.tag</path>
    <example>
       <![CDATA[
               <config:get key="username" echo="true" />
      ]]>
      <usage>
        <comment>
          <p>
            See config-test.jsp in the example application.
          </p>
        </comment>
      </usage>
    </example>
  </tag-file>

...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文