You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@myfaces.apache.org by simon <sk...@apache.org> on 2008/05/01 15:05:23 UTC

Re: t:buffer sharing between two different users session

On Wed, 2008-04-30 at 09:51 -0700, sppzs wrote:
> We have a unique problem in our application, We have this page coded in
> JSF/Myfaces 
> which has  overall structure
> <f:subView>
> <t:buffer>
> <t:dataTable>
> 
> </t:dataTable>
> </t:buffer>
> </f:subView>
> 
> This page is being called from a larger JSF layout page as a JSP include.
> 
> I have noticed sometimes the coomponents within the t:buffer tag of the page
> gets shared between two different sessions. 
> Has anyone else noticed this behaviour?

Can you describe in more detail what you mean by "shared between
sessions"?

Regards, Simon


Re: t:buffer sharing between two different users session

Posted by simon <si...@chello.at>.
On Fri, 2008-05-02 at 08:01 -0700, sppzs wrote:
> Hi Simon,
> 
> While testing we found that
> If a user A is logged from PC A 
> and a different user B is logged from PC B with totally different sessions
> and different user logins. 
> The user B was able to see data from user A in his
> browser session, specifically the code between the t:buffer tags in the jsf
> page was showing data belonging to a different user.
> Both users were logged in around the sametime. It seems like the t:buffer
> contents is stored in the FacesContext, and when user B requested his page
> the <h:outputText value="<BufferVariable>" />
> the <h:outputText? tag picked up the value from the FacesContext for User A.
> 
> 
> FYI
> Here is the contents of manifest.mf file inside Tomahawk.jar
> Implementation-Title: MyFaces
> Implementation-Version: 1.1.1 (October 25 2005)
> Implementation-Vendor: MyFaces Project Team (http://myfaces.apache.org)

That's a really ancient version of Tomahawk...

In modern versions, the place where the data is stored is specified by
the "into" property, as described here:
  http://myfaces.apache.org/tomahawk/tlddoc/t/buffer.html

You aren't specifying an application-scoped variable as the "into"
expression are you?

I can't see any other reason why this would happen. The FacesContext is
a per-request object, and t:buffer (class BufferRenderer) just replaces
the current responseWriter with a newly-created instance to capture the
output. Something would need to be seriously wrong for a request-scoped
variable to leak into another request.

If the "into" expression looks ok, then I suggest you try upgrading. If
you cannot upgrade, then you'll probably need to debug into the
BufferRenderer class.

I haven't heard of anyone having this problem, and have used t:buffer in
the past without having this problem myself (though on a more recent
tomahawk version).

Regards,
Simon


Re: t:buffer sharing between two different users session

Posted by sppzs <ps...@oppenheimerfunds.com>.
Hi Simon,

While testing we found that
If a user A is logged from PC A 
and a different user B is logged from PC B with totally different sessions
and different user logins. 
The user B was able to see data from user A in his
browser session, specifically the code between the t:buffer tags in the jsf
page was showing data belonging to a different user.
Both users were logged in around the sametime. It seems like the t:buffer
contents is stored in the FacesContext, and when user B requested his page
the <h:outputText value="<BufferVariable>" />
the <h:outputText? tag picked up the value from the FacesContext for User A.


FYI
Here is the contents of manifest.mf file inside Tomahawk.jar
Implementation-Title: MyFaces
Implementation-Version: 1.1.1 (October 25 2005)
Implementation-Vendor: MyFaces Project Team (http://myfaces.apache.org)



Hope this is helpful.

Thanks
Pravin




Simon Kitching wrote:
> 
> 
> On Wed, 2008-04-30 at 09:51 -0700, sppzs wrote:
>> We have a unique problem in our application, We have this page coded in
>> JSF/Myfaces 
>> which has  overall structure
>> <f:subView>
>> <t:buffer>
>> <t:dataTable>
>> 
>> </t:dataTable>
>> </t:buffer>
>> </f:subView>
>> 
>> This page is being called from a larger JSF layout page as a JSP include.
>> 
>> I have noticed sometimes the coomponents within the t:buffer tag of the
>> page
>> gets shared between two different sessions. 
>> Has anyone else noticed this behaviour?
> 
> Can you describe in more detail what you mean by "shared between
> sessions"?
> 
> Regards, Simon
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/t%3Abuffer-sharing-between-two-different-users-session-tp16987077p17021276.html
Sent from the MyFaces - Users mailing list archive at Nabble.com.