CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

关于tablib的问题,请帮忙!

楼主WebLearner(学者)2003-12-04 16:49:22 在 Java / Web 开发 提问

这是demo.jsp文件:  
  ---------------------------------------------------------------------  
  <%@   taglib   uri="WEB-INF/diagnostics.tld"   prefix="diag"   %>  
  <%@   page   import="test.GetWebServerTag,   java.util.*"%>  
  <html>  
  <head>  
  <title>Taglib</title>  
  </head>  
  <body>  
  <h3>Basic   Example   of   a   custom   Tag</h3>  
  The   Web   server   is    
   
  <h1><diag:getWebServer></h1>  
   
  </body>  
  </html>  
  --------------------------------------------------------------------  
  运行出现以下错误:  
  ----------------------------------------------------------------------  
  org.apache.jasper.JasperException:   /demo.jsp(8,23)   No   such   tag   getWebServer   in   the   tag   library   imported   with   prefix   diag  
  -----------------------------------------------------------------------  
  如果去掉其中的<h1><diag:getWebServer></h1>这行,可以正常运行,无显示。  
  以下为java源代码,已经正常编译了。  
  -------------------------------------------------------------  
  package   test;  
   
  import   javax.servlet.http.*;  
  import   javax.servlet.jsp.*;  
  import   javax.servlet.jsp.tagext.*;  
  import   java.io.*;  
  import   java.net.*;  
   
  public   class   GetWebServerTag   extends   TagSupport  
  {  
  public   int   doStartTag()   throws   JspException{  
  try{  
  HttpServletRequest   request   =   (HttpServletRequest)   pageContext.getRequest();  
  URL   url   =   new   URL("http",request.getServerName(),request.getServerPort(),"/");  
  URLConnection   con   =   url.openConnection();  
  ((HttpURLConnection)con).setRequestMethod("OPTIONS");  
  String   webserver   =   con.getHeaderField("server");  
  JspWriter   out   =   pageContext.getOut();  
  out.print(webserver);  
  }  
  catch   (IOException   e){  
  throw   new   JspException(e.getMessage());  
  }  
  return   SKIP_BODY;  
  }  
  };  
  ---------------------------------------------------------------  
  可知tld文件是没有错误的,因此就不贴出来了,想请问一下,为什么会出现那样的错误提示呢?该怎么样修改,第一次用taglib,没想到这么复杂。  
  问题点数:40、回复次数:6Top

1 楼jsyx()回复于 2003-12-04 17:43:48 得分 10

<diag:getWebServer   />  
   
  没加   /  
  Top

2 楼rainy14f(Java要从娃娃抓起)回复于 2003-12-04 18:09:00 得分 20

你显示的错误表明,在你引入的标志库里没有getWebServer这个标志。  
  你先检查一下,在你的TLD文件里,这个tag的名字是不是定义对了?比如:  
  <taglib>  
  ...  
  <tag>  
      <name>getWebServer</name>       ------这里定义你的tag的名字  
      <tag-class>GetWebServerTag</tag-class>     ----这个tag的实现类  
      ..  
  </tag>  
  ..  
  </taglib>Top

3 楼gong1(轻松编程)回复于 2003-12-04 18:13:52 得分 10

没有加/  
  Top

4 楼WebLearner(学者)回复于 2003-12-04 19:12:07 得分 0

补Top

5 楼WebLearner(学者)回复于 2003-12-04 19:14:35 得分 0

补充一下我加了<h1><diag:getWebServer   /></h1>之后仍然是一样的错误,下面是.tld文件的源代码:  
  ----------------------------------------------------------------------  
  <?xml   version="1.0"   encoding="UTF-8"?>  
   
  <!DOCTYPE   taglib   PUBLIC   "-//Sun   Microsystems,   Inc.//DTD   JSP   Tag   Library   1.1//EN"   "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">  
  <taglib>  
      <tlibversion>1.0</tlibversion>  
      <jspversion>1.1</jspversion>  
      <shortname>diag</shortname>  
      <uri>http://jakarta.apache.org/taglibs/display</uri>  
      <info>Display   Tag   Library</info>  
      <tag>  
          <name>table</name>  
          <tagclass>test.GetWebServerTag</tagclass>  
          <bodycontent>empty</bodycontent>  
      </tag>  
   
  </taglib>  
  --------------------------------------------------------------------------  
  为什么错误依旧?  
  Top

6 楼WebLearner(学者)回复于 2003-12-04 19:17:06 得分 0

我看到了,原来是<name>table</name>  
  写错了。应该是<name>getWebServer</name>  
  Top

相关问题

  • 请问在web.xml中使用的tablib的问题
  • struts tablib問題
  • [在线等]struts tablib 的问题
  • 请
  • 请
  • 请教!请教!
  • 请 请问???
  • 请进!请进?
  • 请进,请进....
  • 请教请教!!!

关键词

得分解答快速导航

  • 帖主:WebLearner
  • jsyx
  • rainy14f
  • gong1

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo