Java Mailing List Archive

http://www.junlu.com/

Home » Home (12/2007) » JSP Interest »

Custom Tags in JSP

Vijith

2003-08-08


> Hi All,
> I'm new to Custom Tags in JSP and I'm facing few issues.Can anyone
> please help me out in this regard.
>
> 1) I have a custom tag like
> <a:emp first="q">
> Test
> </a:emp>
>
> Now when i include this custom tag in my jsp, the attribute is getting
> set and the doStartTag is also getting called. The return variable in
> the doStartTag is specified as EVAL_BODY_INCLUDE. Hence now the
> doAfterBody is also getting executed and in this method I'm printing
> some extra jsp contents and is working fine. But the problem I'm facing
> is that Test given in the body of the jsp is also getting printed ,
> which i dont want.Can anyone tell me how to stop Test from occuring in
> the response stream but want to evaluate the body of the customtag,
> which i want to use for formatting..
>
> public int doStartTag() //throws IOException
>  {
>    try
>   {
>      this.pageContext.getOut().write("Hello world <br>");
>    }catch(Exception e){};
>   return this.EVAL_BODY_INCLUDE;
>  }
> public int doAfterBody()
>   {
>
>   try
>  {
>  this.pageContext.getOut().write("<br> in do after body tag ");
> BodyContent bc =  this.getBodyContent();
>  }catch(Exception e){};
>  return this.EVAL_PAGE;
>   }
>
> Output is
> Hello wold
> Test
> in do after body tag
>
> and out put i require is
> Hello wold
> in do after body tag
>
> The reason being is I will be passing expression as the body and will
> use this expression to modify the content of the body
>
> 2) Is it like if i call BodyContent bc =  this.getBodyContent(); in
> the doStartTag and later whatever i write to the out writer will not
> come to response stream.
>
> public int doStartTag() //throws IOException
>  {
>    try
>   {
>      this.pageContext.getOut().write("Hello world <br>");
>      BodyContent bc =  this.getBodyContent();
>     this.pageContext.getOut().write("after getting body content
> <br>");
>    }catch(Exception e){};
>   return this.EVAL_BODY_INCLUDE;
>  }
>
> output is
> Hello world
>
> and what i want is
> Hello world
> after getting body content
>
> Can anyone please give me some insight to this.
>
> Thanks in advance for your time.
>
> Vijith

===========================================================================
To unsubscribe: mailto listserv@(protected)".
For digest: mailto listserv@(protected)".

Some relevant archives, FAQs and Forums on JSPs can be found at:

http://java.sun.com/products/jsp
http://archives.java.sun.com/jsp-interest.html
http://forums.java.sun.com
http://www.jspinsider.com


©2008 junlu.com - Jax Systems, LLC, U.S.A.