cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Reinhard Poetz <reinh...@apache.org>
Subject Re: CallFunctionNode problems in trunk
Date Fri, 12 May 2006 14:03:37 GMT
Giacomo Pati wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
> I'm hunting that bug too ;-)
> 
> My observation until now is that:
> 
> a) SitemapLanguage#createNodeBuilder creates the CallNodeBuilder
> b) it seems (during my debugging) there is only one CallNodeBuilder in
>    the system (even though it is not marked ThreadSafe as other
>    NodeBuilders)
> c) in CallNodeBuilder#buildNode the member variable node will be
>    overwritten each time that method is called (and it is called for
>    each <map:call .../> element)
> 
> I don't know what a NodeBuilder should do in its buildNode method but I 
> think there might be the problem. Later in the processings the linkNode 
> method on the CallNodeBuilder gets called where the interpreter is set 
> on the node. But because of c) only one instance gets the interpreter 
> and if one of the other Nodes created gets processed in a pipeline we'll 
> have a NPE.
> 
> Hope that helps other bug hunters a bid as I don't now how to proceed 
> ATM (is there a problem with non ThreadSave components?)

The problem is that the builder objects mustn't be threadsafe but the container 
always returns the same instance. Though I have no idea how/where to change this ...

-- 
Reinhard Pötz           Independent Consultant, Trainer & (IT)-Coach 

{Software Engineering, Open Source, Web Applications, Apache Cocoon}

                                        web(log): http://www.poetz.cc
--------------------------------------------------------------------

		
___________________________________________________________ 
Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de

Mime
View raw message