Создал класс для тега, оформил для него tld файл, пытаюсь заюзать на jsp-странице - tomcat выдает ошибку. Класс
| Код | package pollTags; import javax.servlet.jsp.tagext.BodyTagSupport; import javax.servlet.jsp.JspTagException; import javax.servlet.jsp.JspException; import java.io.IOException;
public class pollTag extends BodyTagSupport { public int doAfterBody() throws JspTagException { try { pageContext.getOut().print("doAfterBody"); } catch (IOException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } return EVAL_BODY_INCLUDE; }
public int doStartTag() throws JspException{ try { pageContext.getOut().print("doStartTag"); } catch (IOException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } return EVAL_BODY_BUFFERED; }
public void doInitBody() throws JspException{ try { pageContext.getOut().print("doInitBody"); } catch (IOException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } }
public int doEndTag() throws JspException { try { pageContext.getOut().print("doInitBody"); } catch (IOException e) { e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. } return EVAL_PAGE; } }
|
*.tld
| Код | <?xml version="1.0" encoding="ISO-8859-1"?> <taglib> <description>A tag library exercising PollTag handlers.</description> <tlib-version>1.0</tlib-version> <jsp-version>1.2</jsp-version> <short-name>PollTagLibrary</short-name> <uri>/pollTags</uri> <tag> <name>Poll</name> <tag-class>pollTags.pollTag</tag-class> <body-content>JSP</body-content> </tag> </taglib>
|
*.jsp
| Код | <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ taglib prefix="as" uri="/pollTags" %> <html> <head><title>Simple jsp page</title></head> <as:Poll/> <body>Place your content here</body> </html>
|
Добавлено @ 20:06 Tomcat выдал следующее
| Код | type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: File "/pollTags" not found org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:50) org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407) org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:114) org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:159) org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418) org.apache.jasper.compiler.Parser.parseDirective(Parser.java:483) org.apache.jasper.compiler.Parser.parseElements(Parser.java:1539) org.apache.jasper.compiler.Parser.parse(Parser.java:126) org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211) org.apache.jasper.compiler.ParserController.parse(ParserController.java:100) org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:146) org.apache.jasper.compiler.Compiler.compile(Compiler.java:286) org.apache.jasper.compiler.Compiler.compile(Compiler.java:267) org.apache.jasper.compiler.Compiler.compile(Compiler.java:255) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:296) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245) javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.4 logs.
|
|