Taglib问题:JSP Parsing Error:File "/demotag" not found

flowerknight 2004-04-06 07:43:01
mytag.tld存放在WEB-INF/tlds下,内容:
<?xml version="1.0" encoding="ISO-8859-1" ?>

<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">
<description>A tag library exercising SimpleTag handlers.</description>
<tlib-version>1.0</tlib-version>

<short-name>examples</short-name>
<uri>/demotag</uri>
<description>
A simple tab library for the examples
</description>

<tag>
<description>Outputs Hello, World,从实现Tag接口起开发</description>
<name>hello_int</name>
<tag-class>com.jspdev.ch6.HelloTag_Interface</tag-class>
<body-content>empty</body-content>
</tag>
</taglib>

我工程下的web.xml,如下声明:
<?xml version="1.0" ?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<!-- Copyright 2002 by ObjectLearn. All Rights Reserved. -->
<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 web-app_2_4.xsd"
version="2.4">

... ...
<taglib>
<taglib-uri>/demotag</taglib-uri>
<taglib-location>/WEB-INF/tlds/mytag.tld</taglib-location>
</taglib>

... ...

</web-app>

调用页面mytaglib.jsp
<%@ taglib uri="/demotag" prefix="hello"%>//这里报错:JSP Parsing Error:File "/demotag" not found
<%@ page contentType="text/html; charset=gb2312" language="java" %>
<html>
<head>
<title>first cumstomed tag</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>

<body>
<p>以下的内容从Taglib中显示:</p>
<p><i><hello:hello_int/></i></p>
</body>
</html>

//本人采用eclipse2.1.2+lobmoz开发
...全文
60 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
neulx 2004-08-24
  • 打赏
  • 举报
回复
改为/WEB-INF/tlds/mytag.tld
在把web.xml删了试试可不可以
fancyerII 2004-04-06
  • 打赏
  • 举报
回复
好像没什么错。
你试试不用web.xml。
文件结构如下:MyTag为注册的Web服务。
MyTag
--mytaglib.jsp
--mytag.tld
--WEB-INF
--com.jspdev.ch6.HelloTag_Interface(.应为文件夹)

再把mytaglib.jsp的<%@ taglib uri="/demotag" prefix="hello"%>改为
<%@ taglib urimytag.tld" prefix="hello"%>试试。

我在前几天也遇到这种情况。
jsp文件种用说明taglib在web.xml中说明,在web.xml中说明tld文件的位置。文件结构和你的一样,在JBuilder X自带的Tomcat4.1下出错,部署到外部的Tomcat5中也出错,但用Weblogic8.1就没有出错。我改成刚才的方法,在外部的Tomcat5中就没有问题了,我也不知道为什么会这样。
出错的异常为:
org.apache.jasper.JasperException: File "/helloworld" not found

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧