似是故人来 漫漫何其多:java jsp运行 关于jsp自定义标签

来源:百度文库 编辑:中科新闻网 时间:2024/05/01 22:16:51
我做了一个自定义标签问题,通过都没问题,但就有一个想不通,经过如下:

先做了个servlet实验,有两个JSP文件(A和B),一个编译好的AAAservlet.java文件(在my文件夹里)和一个web.xml文件,敲URL:http:\\localhost:8080\my\AAA,就可以直接显示JSP文件B的内容.

好了,接着我做自定义标签,1写个标签.JAVA,2创建标签库.tld,3在web.xml中加如标签元素,4修改JSP文件B(把body换自定义标签)后,效果也对,
但直接敲URL:http:\\localhost:8080\my\AAA会报错,由JSP文件A SUB到文件B效果没错,不知道为什么,错如下:

请高手指导指导
HTTP Status 500 -
--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: XML parsing error on file /WEB-INF/mytaglib.tld
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:453)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:375)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
myclass.DispatcherServlet.doPost(DispatcherServlet.java:45)
myclass.DispatcherServlet.doGet(DispatcherServlet.java:23)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

root cause

org.apache.jasper.JasperException: XML parsing error on file /WEB-INF/mytaglib.tld
org.apache.jasper.xmlparser.ParserUtils.parseXMLDocument(ParserUtils.java:110)
org.apache.jasper.xmlparser.ParserUtils.parseXMLDocument(ParserUtils.java:132)
org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:217)
org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:162)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:423)

~~~~~~~~~~~~~~~~~~~~~~~~

做成自定义标签后,服务器禁止访问自定义标签类内容,做成自定义标签的好处一个是可以重用,另一个就是代码比较安全了

你的标签库定义有问题,请检查标签库的定义规则。