> Date: Thu, 04 Apr 2002 11:20:21 -0800
> From: Remy Maucherat <[EMAIL PROTECTED]>
> Subject: Re: cvs commit: 
jakarta-tomcat-jasper/jasper2/src/share/org/apache/jasper/compiler Node.java
> To: Tomcat Developers List <[EMAIL PROTECTED]>
> MIME-version: 1.0
> X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2600.0000
> Content-transfer-encoding: 7bit
> X-Priority: 3
> X-MSMail-priority: Normal
> Delivered-to: mailing list [EMAIL PROTECTED]
> Mailing-List: contact [EMAIL PROTECTED]; run by ezmlm
> X-Spam-Rating: localhost.apache.org 1.6.2 0/1000/N
> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N
> List-Post: <mailto:[EMAIL PROTECTED]>
> List-Subscribe: <mailto:[EMAIL PROTECTED]>
> List-Unsubscribe: <mailto:[EMAIL PROTECTED]>
> List-Help: <mailto:[EMAIL PROTECTED]>
> List-Id: "Tomcat Developers List" <tomcat-dev.jakarta.apache.org>
> 
> > Remy,
> >
> > I afraid that this patch won't work, because you are initializing
> > CustomTag.JspAttrs in the constructor, which is too early.
> > CustomTag.JspAttrs is currently set in Validator, after tld is consulted
> > to see if the tag attribute can take a request time expression;
> > and if so, extracts the string between '<%=' and '%>' etc.
> 
> The patch is super easy to revert. My problem is that I don't understand
> anything to the new generator design, so the patch is bad.
> 

That's OK.  It always takes a while to get into a new piece of code.

The new jasper design is really very simple.  There are currently only
3 pieces that matters: Parser, Validator, and Generator, representing
the 3 phases of the compiler.  Parser is reponsible for parsing the page,
making sure that the grammar is followed, and generating a list of Nodes.
Validator is for checking the validity of the attributes and putting the
valid attributes into digested formats, of which CustomTag.JspAttrs is
one of them.  Generator is for generating the servlet program from the
Nodes.  We'll probably add a Optimizer phase to jasper later.

> > Do you have a test case that causes a NPE?
> 
> Just try to run the admin webapp (and click on some tree node; there are
> also some other small issues with the user admin pages).
> 

I'll do that and try to fix it.  Thanks for trying out jasper2.

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


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

Reply via email to