Using Struts 1.1b3 on Tomcat 4.1.18

First let me state my problem:  I found that some <nested> tags were failing because 
they were trying to retrieve a property from the wrong bean.  I get the classic "No 
getter method for property foo of bean bar".  Except, "bar" isn't the bean that it 
should've been looking at.  For a more in-depth description of the problem please 
refer to http://marc.theaimsgroup.com/?l=struts-user&m=104463384710605&w=2.

My attempt to debug this problem have lead me to the 
org.apache.jasper.runtime.TagHandlerPool class.  What I have found is that a call to 
the get(NestedWriteTag) method results in the TagHandlerPool object returning -- or 
should I say, recycling -- a previously used NestedWriteTag.  I know that this is how 
it's supposed to work.  The problem with this -- in this case -- is that the 
NestedWriteTag that is returned isn't initialized; in particular the  value of "name" 
property is as it was set during its previous use.  The current use of this tag 
proceeds to set the "property" property only.  Needless to say, when it tries to 
retrieve the property from the named bean, it fails.  This, in my analysis is the 
cause of my problem.

Now, I don't understand the inner workings and/or responsibilities of the servlet 
container or a tag.  So, I don't know who is at fault here: the TagHandlerPool for not 
initializing the tag or the generated page logic that uses it. 

Can you help?

Sri

Reply via email to