1

我正在尝试为我的 JSP TagLib 类构建一个通用类

class MyTag extends CustomTag
{
   public int doEndTag()
   {
      JspWriter out = pageContext.getOut(); <-- this one works fine
   }
}
class CustomTag extends BodyTagSupport
{
   public CustomTag()
   {
      JspWriter out = pageContext.getOut(); <-- this one throws me a Nullpointer
   }
}

我究竟做错了什么?

我可以在父级中创建一个额外的方法,并从 doEndTag() 中的子级调用它,但使用构造函数会更好。

4

2 回答 2

2

在第一堂课doEndTag()被调用的时候,pageContext已经设置好了。在您的第二堂课中,pageContext尚未设置,因此是null。这就是导致您的空指针异常的原因。
有关更多详细信息,请参见此处

于 2012-04-19T18:30:24.393 回答
0

更改为以下代码并尝试更多:

class CustomTag extends BodyTagSupport {    
      public CustomTag()    {
           JspWriter out = super.pageContext.getOut(); 
      } 
} 
于 2012-04-19T18:25:31.583 回答