TLD,Taglib和属性设置器方法有问题

时间:2016-05-24 08:23:27

标签: java jsp java-ee taglib

我在JSP尝试自定义标签。我按照教程,最后得到了这段代码:

Taglib导入:

UserZipCode
:
"11111"
userBirthAddress
:
"address"
userBirthCity
:
"c"
userBirthCountry
:
"c"
userBirthDay
:
"31"
userBirthMonth
:
"08"
userBirthYear
:
"1992"
userDescription
:
"description"
:
"x"
userLastName
:
"x"
userPassword
:
""
userPasswordConfirm
:
"xxxx"
userPhoneNr
:
"555555555555"
userProfileAgeFrom
:
"["1"]"
userProfileAgeTo
:
"["3"]"
userProfileWage
:
"9.60"
userQuote
:
"c"
userRetypePassword
:
""
userSex
:
"m"
user_id
:
"6"

我在这里实现了我的标签:

<%@taglib prefix="me" uri="/WEB-INF/tlds/myTLD.tld" %>

这就是我的TLD的样子(由NetBeans生成):

<body>
    <h1>Testing custom tags</h1>
    <me:MiTag titulo="Some title">
        A test text
    </me:MiTag>
</body>

这是我的标签处理程序类:

<?xml version="1.0" encoding="UTF-8"?>
<taglib version="2.1" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd">
  <tlib-version>1.0</tlib-version>
  <short-name>mytld</short-name>
  <uri>/WEB-INF/tlds/myTLD</uri>
  <tag>
    <name>MiTag</name>
    <tag-class>MiTag</tag-class>
    <body-content>scriptless</body-content>
    <attribute>
      <name>titulo</name>
      <required>true</required>
      <rtexprvalue>false</rtexprvalue>
      <type>java.lang.String</type>
    </attribute>
  </tag>
</taglib>

嗯,这个应该正在运作。但是...:

enter image description here

这里有什么问题?

1 个答案:

答案 0 :(得分:1)

我意识到出了什么问题:标签处理程序类不在包中。一旦我将课程放入一个包中(例如,&#34;标签&#34;),并通过

引用它
<tag-class>tags.MiTag</tag-class>

......它开始工作了!