Sure...Yazid!
Earlier I had this code, at the detail :
In the "treeNodeCommand" facet, action method was returning a value
(pointing to the jsp page, to be shown on the right side detail-panel).
But, as Helmut said, to render the page partially, action should return
'null'.
<f:facet name="treeNodeCommand">
<tc:command action="#{mainTree.showInDetail}">
<tc:attribute value=":mainpage:rightPanel"
name="renderedPartially" />
</tc:command>
</f:facet>
....And in main page, this was the code earlier:
<tc:cell>
<tc:panel id="rightPanel">
<f:facet name="layout">
<tc:gridLayout rows="*" columns="*" />
</f:facet>
<jsp:doBody />
</tc:panel>
</tc:cell>
Now, in showInDetail() :
*public String showInDetail() {
ViewObject selected = (ViewObject) state.getMarker
().getUserObject();
LOG.finer("Selected Tree node: "+selected);
FacesContext facesContext = FacesContext.getCurrentInstance();
PanelController panelController = (PanelController)
VariableResolverUtil.resolveVariable(facesContext, "panelController");
panelController.reset(selected);
nodeOutcome = selected.getOutcome();
return null;
}
*
and in the main page,
<tc:cell>
<tc:panel id="rightPanel">
<f:facet name="layout">
<tc:gridLayout rows="*" columns="*" />
</f:facet>
*<jsp:include
page="/xxxmain/handleLanding.jsp" />*
</tc:panel>
</tc:cell>
Based on this outcome, in my *handleLanding.jsp*,
*<tc:box rendered="#{cdbMainTree.nodeOutcome == 'showCustomerPanel'}">
<f:facet name="layout">
<tc:gridLayout />
</f:facet>
<jsp:include page="/customer/custTabpane.jsp" />
</tc:box>
<tc:box rendered="#{cdbMainTree.nodeOutcome == 'defaultLanding'}">
<f:facet name="layout">
<tc:gridLayout />
</f:facet>
<jsp:include page="/cdbmain/defaultLanding.jsp" />
</tc:box>
*These pages(*cusTabpane.jsp/defaultLanding.jsp*) are basically the views
which we want to display on the right panel....
Bottom line is, we are not going to forward the response to other page,
which is equivalent to 'submission of whole page to the server'.
Hope this helps!
thanks,
-R
*
*On Wed, Feb 27, 2008 at 12:21 PM, yazid <[EMAIL PROTECTED]> wrote:
>
> Hi Raj,
> Could you please tell me how did you do that
> Thanks in advance.
>
> Raj .G. Narasimhan wrote:
> >
> > Oh...ok... Actually, I was doing doBody defined in my main tag and
> trying
> > to
> > expand it in another page....Now, I rewrote the code, and made the body
> > inline on the same page.....It worked..!
> >
> > THANKS A Trillion Helmut, for that tech tip!!!
> >
> > -R
> >
> > On Feb 13, 2008 11:10 AM, Helmut Swaczinna <[EMAIL PROTECTED]>
> > wrote:
> >
> >> Hi,
> >>
> >> actions called by ajax (renderedPartially) must not return an outcome
> >> (except you really want to
> >> navigate to another page).
> >>
> >> Helmut
> >>
> >>
> >>
> >> ----- Original Message -----
> >> *From:* Raj .G. Narasimhan <[EMAIL PROTECTED]>
> >> *To:* MyFaces Discussion <[email protected]>
> >> *Sent:* Wednesday, February 13, 2008 4:56 PM
> >> *Subject:* Re: [Tobago] renderedPartially doesn't work in
> treeNodeCommand
> >>
> >> Helmut, it does return "customer/custTabpane", which is the valid
> outcome
> >> to be returned....and in fact, it loads the detail page also. Only
> >> issue,
> >> is the tree is getting reloaded, (Moreover, this issue is more
> pronounce
> >> because the tree's taking atleast 5-6 seconds to re-load ). The detail
> >> page
> >> loads pretty quickly...compares to tree(and there's no need for the
> load
> >> to
> >> be reloaded)
> >>
> >>
> >> thanks,
> >> Raj
> >>
> >>
> >> On Feb 13, 2008 10:40 AM, Helmut Swaczinna <[EMAIL PROTECTED]>
> >> wrote:
> >>
> >> > Hi,
> >> >
> >> > just one idea: Does the action mainTree.showInDetail returns an
> outcome
> >> > != null ?
> >> > If so the whole page gets reloaded.
> >> >
> >> > Helmut
> >> >
> >> >
> >> > ----- Original Message -----
> >> > *From:* Raj .G. Narasimhan <[EMAIL PROTECTED]>
> >> > *To:* [email protected]
> >> > *Sent:* Wednesday, February 13, 2008 4:30 PM
> >> > *Subject:* [Tobago] renderedPartially doesn't work in treeNodeCommand
> >> >
> >> > I'm having problem with partial reloading while invoking
> >> > 'treeNodeCommand'. I am using Tobago 1.0.14 on Tomcat 6.
> >> >
> >> > On clicking the node link, the detail page including the tree gets
> >> > reloaded, even though the <tc:command>'s 'renderedPartially' value is
> >> set to
> >> > body of the page(showing the detailed node info). This issue was
> raised
> >> and
> >> > resolved during mid of '07(fixed in Tobago 1.0.12). This tree holds
> >> > around 300 nodes (user Objects with 4-5 string properties). I have
> >> tried
> >> > without mode="menu" as suggested by Helmut. Still the problem exists.
> I
> >> > don't know, where and what I'm missing and I have been trying to fix
> >> this
> >> > since two days...
> >> >
> >> > Here's the code, that I'm trying:
> >> >
> >> > <tc:tree value="#{mainTree.rootNode}" mode="menu" id="nav"
> >> > nameReference="userObject.label"
> >> idReference="userObject.id"
> >> > tipReference="userObject.label" state="#{mainTree.state}"
> >> > showIcons="false" showJunctions="true" showRoot="false">
> >> >
> >> > <f:facet name="treeNodeCommand">
> >> > <tc:command action="#{mainTree.showInDetail}">
> >> > <tc:attribute value=":mainpage:rightPanel"
> >> > name="renderedPartially" />
> >> > </tc:command>
> >> > </f:facet>
> >> > </tc:tree>
> >> >
> >> >
> >> > Here's the portion of main page (where this detail page will have to
> be
> >> > loaded)
> >> >
> >> > <f:view locale="#{configController.locale}">
> >> > <tc:loadBundle basename="cb_bundle" var="rsrcBundle" />
> >> > <tc:page applicationIcon="icon/Vzicon.ico"
> >> > label="#{rsrcBundle.pageTitle}" id="mainpage" width="900px"
> >> > height="830px">
> >> >
> >> > ......
> >> >
> >> > <tc:cell spanX="2">
> >> > <tc:panel id="middleBox">
> >> > <f:facet name="layout">
> >> > <tc:gridLayout rows="fixed;fixed;*"
> columns="*;2*"
> >> > id="boxToolbarLayout" />
> >> > </f:facet>
> >> > ....
> >> >
> >> > <tc:cell spanX="2">
> >> > <tc:panel id="treeAndRightPanel">
> >> >
> >> > <f:facet name="layout">
> >> > <tc:gridLayout border="1" rows="*"
> >> > columns="*;2*" />
> >> > </f:facet>
> >> > <tc:cell>
> >> > <jsp:include
> >> > page="/WEB-INF/cdbmain/navigation.jsp" />
> >> > <%-- <tc:panel id="leftPanel">
> >> > <f:facet name="layout">
> >> > <tc:gridLayout rows="*"
> columns="*"
> >> > />
> >> > </f:facet>
> >> >
> >> > </tc:panel>--%>
> >> > </tc:cell>
> >> >
> >> > <tc:cell>
> >> > <tc:panel id="rightPanel">
> >> > <f:facet name="layout">
> >> > <tc:gridLayout rows="*"
> columns="*"
> >> > />
> >> > </f:facet>
> >> > <jsp:doBody />
> >> > </tc:panel>
> >> > </tc:cell>
> >> >
> >> > </tc:panel>
> >> > </tc:cell>
> >> > .....
> >> >
> >> > And in the generated html source, I could see the following:
> >> >
> >> > var mainpage_navigator_nav_treeNodeCommand = \"Tobago.reloadComponent
> >> > ('mainpage:rightPanel',this.id, {});
> >> >
> >> >
> >> > Appreciate your help!
> >> > --
> >> > Thanks,
> >> >
> >> > Raj .G. Narasimhan
> >> >
> >> >
> >>
> >>
> >> --
> >> Thanks,
> >>
> >> Raj .G. Narasimhan
> >>
> >>
> >
> >
> > --
> > Thanks,
> >
> > Raj .G. Narasimhan
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/-Tobago--renderedPartially-doesn%27t-work-in-treeNodeCommand-tp15460769p15718135.html
> Sent from the MyFaces - Users mailing list archive at Nabble.com.
>
>
--
Thanks,
Raj .G. Narasimhan