[ http://mc4j.org/jira/browse/STS-333?page=comments#action_10588 ] 
            
Tim Fennell commented on STS-333:
---------------------------------

If a tag throws an exception from any of it's interface methods the container 
is not allowed to pool the tag for further use.  Therefore the above described 
change would appear to be unnecessary.  Are you seeing problems with this in 
Tomcat, or is this just from browsing the Stripes code?

> Insufficent cleanup in InputTagSupport.doEndTag() on exceptions from 
> TagErrorRenderer
> -------------------------------------------------------------------------------------
>
>                 Key: STS-333
>                 URL: http://mc4j.org/jira/browse/STS-333
>             Project: Stripes
>          Issue Type: Bug
>          Components: Tag Library
>    Affects Versions: Release 1.4.2
>            Reporter: Niklas Therning
>         Assigned To: Tim Fennell
>            Priority: Minor
>
> If a custom TagErrorRenderer is used InputTagSupport.doEndTag() won't reset 
> its state properly when the TagErrorRenderer's doAfterEndTag() method throws 
> an exception. If the servlet container pools tags (like Tomcat) this could 
> cause unexpected behaviour.
> I think the following code in InputTagSupport:
>     public final int doEndTag() throws JspException {
>         int result = doEndInputTag();
>         if (getFieldErrors() != null) {
>             this.errorRenderer.doAfterEndTag();
>         }
>         if (this.focus) {
>             makeFocused();
>         }
>         this.errorRenderer = null;
>         this.fieldErrors = null;
>         this.fieldErrorsLoaded = false;
>         this.focus = false;
>         return result;
>     }
>  should be changed into something like
>     public final int doEndTag() throws JspException {
>         try {
>             int result = doEndInputTag();
>             if (getFieldErrors() != null) {
>                 this.errorRenderer.doAfterEndTag();
>             }
>             if (this.focus) {
>                 makeFocused();
>             }
>         } finally {
>             this.errorRenderer = null;
>             this.fieldErrors = null;
>             this.fieldErrorsLoaded = false;
>             this.focus = false;
>         }
>         return result;
>     }

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://mc4j.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Stripes-development mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/stripes-development

Reply via email to