2007/8/27, Schaefer, Dirk Alexander <[EMAIL PROTECTED]>:
>
> hello all,
>
> this is a following up to the email sent before.
>
> i spend a bit more time in investigating the problem and found the
> following.
>
> consider the following: tile is initialized using the
> org.apache.tiles.definition.UrlDefinitionsFactory.
>
> now, when a request receives and the tiles container is instructed to
> render
> a specific tiles definition, the following happens (the interessing
> parts):
>
>     1. invoke 'Definition getDefinition(String name, TilesRequestContext
> tilesContext)' of UrlDefinitionFactory.
>     2. from there invoke 'Definitions getDefinitions()' of
> UrlDefinitionFactory.
>     3. if the instance attribute 'definitions' is null, from there invoke
> 'Definitions readDefinitions()' of UrlDefinitionFactory.
>
> within the third call the configuration is actually parsed and the
> beans/instances/what ever defined within the configuration file(s) ar
> created.
> unfortunatelly the UrlDefinitionFactory does not synchronize the call to
> the
> 'Definitions readDefinitions()' method. the result is, if there are
> multiple request received by the servlet container at once and there has
> no
> other request been received so long, we get into classical multi
> threading problematics where each thread is bothering the others and the
> process of creating the definitions list crashs.
>
> i think this is where's the rub.
>
> can anyone confirm this?



Great analysis Dirk! Can you open a JIRA issue for this?

Thanks
Antonio

Reply via email to