Return-Path: Delivered-To: apmail-myfaces-users-archive@www.apache.org Received: (qmail 50262 invoked from network); 25 Sep 2007 13:44:43 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 25 Sep 2007 13:44:43 -0000 Received: (qmail 49991 invoked by uid 500); 25 Sep 2007 13:44:28 -0000 Delivered-To: apmail-myfaces-users-archive@myfaces.apache.org Received: (qmail 49847 invoked by uid 500); 25 Sep 2007 13:44:28 -0000 Mailing-List: contact users-help@myfaces.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: "MyFaces Discussion" Delivered-To: mailing list users@myfaces.apache.org Received: (qmail 49744 invoked by uid 99); 25 Sep 2007 13:44:27 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 25 Sep 2007 06:44:27 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of andrew.rw.robinson@gmail.com designates 64.233.166.178 as permitted sender) Received: from [64.233.166.178] (HELO py-out-1112.google.com) (64.233.166.178) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 25 Sep 2007 13:44:24 +0000 Received: by py-out-1112.google.com with SMTP id u77so3985011pyb for ; Tue, 25 Sep 2007 06:44:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=3BcCWJ42yUmTWzVCtmkIOsdjADQ5QdVq7d2O8Emu078=; b=MDSWh75PfqlrBBPb8mVnMHiAqFwlvV6SGsjSOSdspgM3UUX3wng9X7fXw3N+h8UNuv/Jw0BH5qUG8JCHgbM3OMljg+29Yxg4LkIOyL9mLpIftCM/+ZIdJASpyOswcmiphOkDq1EprwueQaP7ArSVC+muOjoAN5haRBOeZRYm2GI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=n6JTbk7Eh+YHJUfLEwGmM0MDe0BYotwF0NKeiDhwx48I3kRZwy5RCNfEpxdgjhRvrBgRXoPsh8glwfYKW9v9Fq4zWK3fMBzrPdk5X9ucQwvgxYbnbkpbt0BHIrcIOUZ47L84xVAaoYlo+KHinTByrJdaN1t5Ibzlx/FOg7qFtBU= Received: by 10.35.41.12 with SMTP id t12mr186787pyj.1190727841956; Tue, 25 Sep 2007 06:44:01 -0700 (PDT) Received: by 10.35.35.6 with HTTP; Tue, 25 Sep 2007 06:44:01 -0700 (PDT) Message-ID: Date: Tue, 25 Sep 2007 07:44:01 -0600 From: "Andrew Robinson" To: "MyFaces Discussion" Subject: Re: [Trinidad] panelPopup: how to avoid full page refreshing In-Reply-To: <46F90A81.4010709@tecnotp.it> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <46F8BE01.60700@tecnotp.it> <5bbf92e70709250539w16282c54ga715cd844369990d@mail.gmail.com> <46F90A81.4010709@tecnotp.it> X-Virus-Checked: Checked by ClamAV on apache.org Why can't you just put a component in the top level of the included page that has partialTriggers for your event generating components? There is no need to re-render the entire page. The PPR works on client IDs, so it doesn't matter if the component is in the DIV tag of a popup (the popup is nothing special when it comes to HTML, it just has some CSS positioning on it). On 9/25/07, Renzo Tomaselli wrote: > > Danny, assume a panelPopup holds a Facelets ui:included component. Thus in > general it can be anything. All actions originated by panel contents can > either to close the panel or to change its contents. In the latter case, > refreshing should not affect the overall page. > My actual modal panel xhtml component is: > > > > > value="#{bean.componentBeanName}"/> > > > inlineStyle="visibility: hidden" onclick="return false;"/> > > bean="#{bean.componentBean}" container="#{container}"/> > > > > > This component is included in the app. page but in turn it can contain any > other panel (see cx:include, just some sugar to replace ui:include). > This inclusion is runtime-defined by #{bean.component}. When such component > changes (think about a multi-panel wizard hosting next/previous widgets), > there is no reason to refresh the entire page, unless the popup panel itself > has to disappear (!visible). The popup panel is activated by an "onload" > script which clicks modalTrigger, since till now this component misses any > other activation way. > > Btw, such PPR would be a nice effect on the overall page as well: in my > app. there is only one single page, where a number of facelets components > act as containers, even in nesting mode. In all cases where a single panel > (e.g. xhtml component) is replaced, there is no reason to redraw all others. > > Concerning dialogs - so far I thought they lead to rendering pages, an > effect I wanted to avoid. But maybe "lightweight" leads to something > different, I miss a clear picture about when using either popup panels or > dialogs. > > -- Renzo > > > > Danny Robinson wrote: > Renzo, > > Do you have a small test-case you can post, you certainly should be able to > use PPR inside a model panelPopup. Although it may be a better option to > use lightweight dialogs for what you're suggesting. > > Danny > > > On 9/25/07, Renzo Tomaselli wrote: > Hi, I'm using tr:panelPopup in modal mode only. It works well, but since > it can host alternative panels (e.g. components in the Facelets sense), > the entire page is refreshed whenever a panel is replaced by another > one. Not a nice effect. > Panel navigation occurs from user actions (next/previous) inside the > panel itself. > AFAIK PPR is there just to avoid this effect, e.g. I should be able > somehow to force panel contents refresh only. > But I don't know how to do it. > Suggestions are welcome. > > -- Renzo > > > > > -- > Chordiant Software Inc. > www.chordiant.com