On 21 Jan 2003, Joe Tomcat wrote:

> Date: 21 Jan 2003 05:46:53 -0800
> From: Joe Tomcat <[EMAIL PROTECTED]>
> Reply-To: Tomcat Users List <[EMAIL PROTECTED]>
> To: Tomcat Users List <[EMAIL PROTECTED]>
> Subject: Tag object reuse (pooling) in jsp 2.0?
>
> The current wisdom on object pooling is "don't do it", with the
> exception of expensive objects like database connections, etc.  Right
> now, jsp uses object pooling of tag objects, in theory to attain higher
> performance.  This might have made sense back in the old days, but now
> must Tag objects are very simple with only a few fields, and can be
> created and GCed very efficiently.  Is tag object pooling going to go
> away with jsp 2.0?
>

Best way to find out is to go get the spec :-).

  http://java.sun.com/products/jsp/download.html

For backwards compatibility, the programming requirements on old-style
tags (javax.servlet.jsp.tagext.Tag and friends) remains the same -- you
have to program your tags to operate correctly in a pooled environment.

JSP 2.0 also introduces a new tag API called SimpleTag.  Besides being
much easier to program, you don't need to worry about pooling and reuse of
them; they are created as needed by the container.

There aren't any milestone builds of Tomcat 5 (which implements Servlet
2.4 and JSP 2.0) yet, but it's not all that hard to build from source if
you want to play with this.

> I'm hoping that it will, for two reasons.  First, that will make writing
> tags simpler.  The whole reason we are using Java instead of C++ is
> because in Java we let the GC do the cleanup work for us.  That results
> in much more stable software.  Right now, tags have to be written in
> such a way that they do their own cleanup.  The second reason is that
> tags should have all their fields set in the constructor, perhaps using
> a Map as an argument.  This seems strange but has the advantage that the
> tag object can then be made immutable, which has a large set of
> benefits.
>
> Opinions?
>

Craig


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to