4

jspドキュメントファイルで次のようなものを使用したい:

<%@ taglib prefix="tags" tagdir="/WEB-INF/tags" %>

しかし、私が見た 30 以上の例では、誰もが jsp ドキュメント構文ではなく単純な jsp 構文を使用しています。このようなもの:

<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:fn="http://java.sun.com/jsp/jstl/functions"
    xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
    xmlns:t="/WEB-INF/tags" 
    xmlns="http://www.w3.org/1999/xhtml"
    version="2.0">

単に機能しません。/WEB-INF/tags にあるすべてのタグ ファイルがページに表示されません。tld ファイルを定義し、そこにすべてのタグをリストした場合にのみ、ページでアクセスできます。tld 宣言を回避し、jsp ドキュメント ページでタグ ファイルを引き続き使用することは可能ですか?

4

2 に答える 2

6

xmlns 属性にプレフィックス「urn:jsptagdir:」を入れる必要があります。あなたの場合、

<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page"
    xmlns:c="http://java.sun.com/jsp/jstl/core"
    xmlns:fn="http://java.sun.com/jsp/jstl/functions"
    xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
    xmlns:t="urn:jsptagdir:/WEB-INF/tags" 
    xmlns="http://www.w3.org/1999/xhtml"
    version="2.0">

プレフィックス「urn:jsptld:」を使用して、TLD の場所を指定することもできます。詳細については、http://docs.oracle.com/javaee/1.4/tutorial/doc/JSPX3.htmlの「タグ ライブラリの宣言」に関するセクションを参照してください。

于 2012-08-20T15:33:49.517 に答える