Hi
I am using the p:ajax tag to update a component. I know this update isn't right. I have tried many different update strings, e.g. :frm:j_id1:j_idt5:j_idt6:j_idt8:j_idt9:j_idt10:j_idt11:checkboxTree. Can someone please have a look and see what the update string is supposed to be. My drop down is in a north layout panel and my component that I want to update is in a west layout panel. The Pit drop down needs to update the checkboxTree Tree component
<p:selectOneMenu id="pit" style="width: 140px" value="#{homeBean.selectedPit}">
<f:selectItems value="#{homeBean.pitList}" var="pit" itemLabel="#{pit.name}" itemValue="#{pit.id}" />
<p:ajax update="checkboxTree" listener="#{cc.attrs.treeInitMethod}" />
</p:selectOneMenu>
This is my debug output
Debug Output
/index.xhtml
- Component Tree
<UIViewRoot id="j_id1" inView="true" locale="en_ZA" renderKitId="HTML_BASIC" rendered="true" transient="false" viewId="/index.xhtml">
javax_faces_location_HEAD
<ComponentResourceContainer id="javax_faces_location_HEAD" inView="true" rendered="true" transient="false">
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
<UIOutput inView="true" rendered="true" transient="false"/>
</ComponentResourceContainer>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<UIOutput id="j_idt3" inView="true" rendered="true" transient="false">
<!-- swf object (version 2.2) is used to detect if flash is installed and include swf in the page --> <script type="text/javascript" src="../amcharts/flash/swfobject.js"/> <!-- following scripts required for JavaScript version. The order is important! --> <script type="text/javascript" src="../amcharts/javascript/amcharts.js"/> <script type="text/javascript" src="../amcharts/javascript/amfallback.js"/> <script type="text/javascript" src="../amcharts/javascript/raphael.js"/> <style type="text/css"> .ui-widget { font-size: 75%; } .themeMenu { overflow: auto; height:300px; width:200px; } .ui-layout-north { z-index:20 !important; overflow:visible; } .ui-layout-north .ui-layout-unit-content { overflow:visible; } </style> <title>GeoSeer</title>
</UIOutput>
<UIOutput id="j_idt5" inView="true" rendered="true" transient="false">
<HtmlForm enctype="application/x-www-form-urlencoded" id="j_idt6" inView="true" prependId="true" rendered="true" submitted="false" transient="false">
<Layout closeTitle="Close" collapseTitle="Collapse" fullPage="true" id="j_idt7" inView="true" rendered="true" transient="false">
<UIDebug hotkey="S" id="j_idt55" inView="true" rendered="true" transient="true"/>
<LayoutUnit closable="false" collapseSize="25" collapsed="false" collapsible="false" gutter="6" id="j_idt56" inView="true" maxSize="0" minSize="50" position="center" rendered="true" resizable="false" size="auto" transient="false" visible="true">
<Layout closeTitle="Close" collapseTitle="Collapse" fullPage="false" id="j_idt9" inView="true" rendered="true" transient="false">
<LayoutUnit closable="false" collapseSize="25" collapsed="false" collapsible="false" gutter="6" header="SSR List" id="j_idt10" inView="true" maxSize="0" minSize="50" position="west" rendered="true" resizable="true" size="330" transient="false" visible="true">
<Tree cache="false" dragdrop="false" dynamic="true" expanded="true" id="checkboxTree" inView="true" rendered="true" selectionMode="checkbox" transient="false" var="node">
<UITreeNode id="j_idt57" inView="true" rendered="true" transient="false" type="default">
<HtmlOutputText escape="true" id="j_idt12" inView="true" rendered="true" transient="false"/>
</UITreeNode>
</Tree>
</LayoutUnit>
<LayoutUnit closable="false" collapseSize="25" collapsed="false" collapsible="false" gutter="6" id="j_idt58" inView="true" maxSize="0" minSize="50" position="center" rendered="true" resizable="false" size="auto" transient="false" visible="true">
<TabView activeIndex="0" cache="true" collapsible="false" dynamic="false" effectDuration="normal" id="j_idt14" inView="true" rendered="true" transient="false">
<Tab disabled="false" id="j_idt15" inView="true" rendered="true" title="Home View" transient="false">
<HtmlPanelGrid border="-2147483648" cellpadding="10" columns="2" id="j_idt16" inView="true" rendered="true" transient="false"/>
</Tab>
<Tab disabled="false" id="j_idt17" inView="true" rendered="true" title="Scan Area" transient="false">
<HtmlPanelGrid border="-2147483648" cellpadding="10" columns="2" id="j_idt18" inView="true" rendered="true" transient="false"/>
</Tab>
</TabView>
</LayoutUnit>
</Layout>
</LayoutUnit>
<LayoutUnit closable="false" collapseSize="25" collapsed="false" collapsible="false" gutter="6" header="Menu" id="j_idt22" inView="true" maxSize="0" minSize="50" position="north" rendered="true" resizable="true" size="100" transient="false" visible="true">
<Menubar autoSubmenuDisplay="false" effect="fade" effectDuration="400" id="j_idt23" inView="true" rendered="true" style="Inline style of menubar." transient="false">
<MenuItem ajax="true" async="false" disabled="false" global="true" icon="ui-icon ui-icon-home" id="j_idt24" immediate="false" inView="true" rendered="true" transient="false" url="/index.jsf" value="Home"/>
<Submenu icon="ui-icon ui-icon-script" id="j_idt25" inView="true" label="Analysis" rendered="true" transient="false">
<MenuItem ajax="true" async="false" disabled="false" global="true" id="j_idt26" immediate="false" inView="true" rendered="true" transient="false" url="/analysis/deformation.jsf" value="Deformation"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" id="j_idt27" immediate="false" inView="true" rendered="true" transient="false" url="/analysis/correction.jsf" value="Correction"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" id="j_idt28" immediate="false" inView="true" rendered="true" transient="false" url="/analysis/deformation.jsf" value="Velocity"/>
</Submenu>
<MenuItem ajax="true" async="false" disabled="false" global="true" icon="ui-icon ui-icon-gear" id="j_idt29" immediate="false" inView="true" rendered="true" transient="false" url="/figures/figuresIndex.jsf" value="Figures"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" icon="ui-icon ui-icon-clock" id="j_idt30" immediate="false" inView="true" rendered="true" transient="false" url="/alarms/alarmsIndex.jsf" value="Alarms"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" icon="ui-icon ui-icon-image" id="j_idt31" immediate="false" inView="true" rendered="true" transient="false" url="/images/index.jsf" value="Images"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" icon="ui-icon ui-icon-pencil" id="j_idt32" immediate="false" inView="true" rendered="true" transient="false" url="/snapshots/index.jsf" value="Snapshots"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" icon="ui-icon ui-icon-document" id="j_idt33" immediate="false" inView="true" rendered="true" transient="false" url="/reports/index.jsf" value="Reports"/>
<Submenu icon="ui-icon ui-icon-wrench" id="j_idt34" inView="true" label="Administration" rendered="true" transient="false">
<MenuItem ajax="true" async="false" disabled="false" global="true" id="j_idt35" immediate="false" inView="true" rendered="true" transient="false" url="/admin/users.jsf" value="Users"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" id="j_idt36" immediate="false" inView="true" rendered="true" transient="false" url="#" value="Roles"/>
<MenuItem ajax="true" async="false" disabled="false" global="true" id="j_idt37" immediate="false" inView="true" rendered="true" transient="false" url="#" value="Reports"/>
</Submenu>
<Submenu icon="ui-icon ui-icon-help" id="j_idt38" inView="true" label="Help" rendered="true" transient="false"/>
</Menubar>
<UINamingContainer id="j_idt39" inView="true" rendered="true" transient="false">
javax.faces.component.COMPOSITE_FACET_NAME
<UIPanel inView="true" rendered="true" transient="false">
<HtmlPanelGrid border="-2147483648" columns="10" id="j_idt40" inView="true" rendered="true" transient="false">
<HtmlOutputText escape="true" id="j_idt41" inView="true" rendered="true" transient="false" value="Site"/>
<SelectOneMenu disabled="false" effect="blind" effectDuration="400" height="2147483647" id="site" immediate="false" inView="true" localValueSet="false" readonly="false" rendered="true" required="false" style="width: 140px" transient="false" valid="true" value="1">
<UISelectItems id="j_idt42" inView="true" rendered="true" transient="false"/>
</SelectOneMenu>
<HtmlOutputText escape="true" id="j_idt43" inView="true" rendered="true" transient="false" value="Pit"/>
<SelectOneMenu disabled="false" effect="blind" effectDuration="400" height="2147483647" id="pit" immediate="false" inView="true" localValueSet="false" readonly="false" rendered="true" required="false" style="width: 140px" transient="false" valid="true" value="1">
<UISelectItems id="j_idt44" inView="true" rendered="true" transient="false"/>
</SelectOneMenu>
<HtmlOutputText escape="true" id="j_idt45" inView="true" rendered="true" transient="false" value="Mine Time:"/>
<HtmlOutputText escape="true" id="j_idt46" inView="true" rendered="true" transient="false" value="current time"/>
<HtmlOutputText escape="true" id="j_idt47" inView="true" rendered="true" transient="false" value="Deployments From:"/>
<Calendar disabled="false" disabledWeekends="false" effect="slideDown" effectDuration="normal" id="j_idt48" immediate="false" inView="true" localValueSet="false" maxHour="23" maxMinute="59" maxSecond="59" maxlength="-2147483648" minHour="0" minMinute="0" minSecond="0" mode="popup" navigator="false" pages="1" pattern="MM/dd/yyyy" popupIconOnly="false" readOnlyInputText="false" readonly="false" rendered="true" required="false" selectOtherMonths="false" showButtonPanel="false" showOn="focus" showOtherMonths="false" showWeek="false" size="-2147483648" stepHour="1" stepMinute="1" stepSecond="1" timeOnly="false" transient="false" valid="true"/>
<HtmlOutputText escape="true" id="j_idt49" inView="true" rendered="true" transient="false" value="Deployments To:"/>
<Calendar disabled="false" disabledWeekends="false" effect="slideDown" effectDuration="normal" id="j_idt50" immediate="false" inView="true" localValueSet="false" maxHour="23" maxMinute="59" maxSecond="59" maxlength="-2147483648" minHour="0" minMinute="0" minSecond="0" mode="popup" navigator="false" pages="1" pattern="MM/dd/yyyy" popupIconOnly="false" readOnlyInputText="false" readonly="false" rendered="true" required="false" selectOtherMonths="false" showButtonPanel="false" showOn="focus" showOtherMonths="false" showWeek="false" size="-2147483648" stepHour="1" stepMinute="1" stepSecond="1" timeOnly="false" transient="false" valid="true"/>
</HtmlPanelGrid>
</UIPanel>
</UINamingContainer>
</LayoutUnit>
</Layout>
</HtmlForm>
</UIOutput>
</html>
</UIViewRoot>
+ Scoped Variables
31 Jul 2011 7:40:44 AM - Generated by Mojara/Facelets
Need help finding my component
Could you please provide the complete code or your xhtml-page?
as you tried updating id's like "j_idt8" i assume that you have a lot of generic id's, as these are automatically generated id's for components with no id specified.
The update-string depends on the form and all the naming-containers the updated component is located in. Therefore we need the complete code of your page
as you tried updating id's like "j_idt8" i assume that you have a lot of generic id's, as these are automatically generated id's for components with no id specified.
The update-string depends on the form and all the naming-containers the updated component is located in. Therefore we need the complete code of your page
masterLayout.xhtml
All my pages extend this file. index.xhtml extends this file
All my pages extend this file. index.xhtml extends this file
Code: Select all
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:p="http://primefaces.prime.com.tr/ui"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
<!-- swf object (version 2.2) is used to detect if flash is installed and include swf in the page -->
<script type="text/javascript" src="../amcharts/flash/swfobject.js"></script>
<!-- following scripts required for JavaScript version. The order is important! -->
<script type="text/javascript" src="../amcharts/javascript/amcharts.js"></script>
<script type="text/javascript" src="../amcharts/javascript/amfallback.js"></script>
<script type="text/javascript" src="../amcharts/javascript/raphael.js"></script>
<style type="text/css">
.ui-widget {
font-size: 75%;
}
.themeMenu {
overflow: auto;
height:300px;
width:200px;
}
.ui-layout-north {
z-index:20 !important;
overflow:visible;
}
.ui-layout-north .ui-layout-unit-content {
overflow:visible;
}
</style>
<title>GeoSeer</title>
</h:head>
<h:body>
<h:form>
<p:layout fullPage="true">
<ui:debug hotkey="s" rendered="true"/>
<p:layoutUnit position="center">
<ui:insert name="content">
</ui:insert>
</p:layoutUnit>
<p:layoutUnit position="north" size="100" header="Menu" resizable="true">
<p:menubar>
<p:menuitem value="Home" url="/index.jsf" icon="ui-icon ui-icon-home" />
<p:submenu label="Analysis" icon="ui-icon ui-icon-script">
<p:menuitem value="Deformation" url="/analysis/deformation.jsf" />
<p:menuitem value="Correction" url="/analysis/correction.jsf" />
<p:menuitem value="Velocity" url="/analysis/deformation.jsf" />
</p:submenu>
<p:menuitem value="Figures" url="/figures/figuresIndex.jsf" icon="ui-icon ui-icon-gear" />
<p:menuitem value="Alarms" url="/alarms/alarmsIndex.jsf" icon="ui-icon ui-icon-clock" />
<p:menuitem value="Images" url="/images/index.jsf" icon="ui-icon ui-icon-image" />
<p:menuitem value="Snapshots" url="/snapshots/index.jsf" icon="ui-icon ui-icon-pencil" />
<p:menuitem value="Reports" url="/reports/index.jsf" icon="ui-icon ui-icon-document"/>
<p:submenu label="Administration" icon="ui-icon ui-icon-wrench">
<p:menuitem value="Users" url="/admin/users.jsf" />
<p:menuitem value="Roles" url="#" />
<p:menuitem value="Reports" url="#" />
</p:submenu>
<p:submenu label="Help" icon="ui-icon ui-icon-help">
</p:submenu>
</p:menubar>
<ui:insert name="siteSelection">
</ui:insert>
</p:layoutUnit>
</p:layout>
</h:form>
</h:body>
</html>
Primefaces 3.0.1
Tomcat 7.0.22
Mojarra JSF 2.1.6
Tomcat 7.0.22
Mojarra JSF 2.1.6
index.xhtml
Code: Select all
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
template="/templates/masterLayout.xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.prime.com.tr/ui"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:home="http://java.sun.com/jsf/composite/components/home">
<ui:define name="siteSelection">
<home:siteSelection treeInitMethod="#{homeTreeBean.init}" update="checkboxTree"/>
</ui:define>
<ui:define name="content">
<p:layout>
<p:layoutUnit position="west" header="SSR List" resizable="true" size="330">
<p:tree value="#{homeTreeBean.root}" var="node" dynamic="true" cache="false"
id="checkboxTree"
selectionMode="checkbox"
selection="#{homeTreeBean.selectedNode}" expanded="true" >
<p:ajax event="select" listener="#{homeTreeBean.onNodeSelect}" />
<p:ajax event="unselect" listener="#{homeTreeBean.onNodeUnselect}" />
<p:treeNode>
<h:outputText value="#{node}" />
</p:treeNode>
</p:tree>
</p:layoutUnit>
<p:layoutUnit position="center">
<p:tabView>
<p:tab title="Home View">
<h:panelGrid columns="2" cellpadding="10">
</h:panelGrid>
</p:tab>
<p:tab title="Scan Area">
<h:panelGrid columns="2" cellpadding="10">
</h:panelGrid>
</p:tab>
</p:tabView>
</p:layoutUnit>
</p:layout>
</ui:define>
</ui:composition>
Primefaces 3.0.1
Tomcat 7.0.22
Mojarra JSF 2.1.6
Tomcat 7.0.22
Mojarra JSF 2.1.6
siteSelection.xhtml
Code: Select all
<ui:component xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:cc="http://java.sun.com/jsf/composite"
xmlns:p="http://primefaces.prime.com.tr/ui">
<cc:interface>
<cc:attribute name="treeInitMethod" method-signature="void listener()" required="true" />
<cc:attribute name="update" required="true"/>
</cc:interface>
<cc:implementation>
<h:panelGrid columns="10">
<h:outputText value="Site" />
<p:selectOneMenu id="site" style="width: 140px" value="#{homeBean.selectedSite}">
<f:selectItems value="#{homeBean.siteList}" var="site" itemLabel="#{site.name}" itemValue="#{site.id}" />
<p:ajax update="pit" listener="#{homeBean.onSiteChange}" />
</p:selectOneMenu>
<h:outputText value="Pit" />
<p:selectOneMenu id="pit" style="width: 140px" value="#{homeBean.selectedPit}">
<f:selectItems value="#{homeBean.pitList}" var="pit" itemLabel="#{pit.name}" itemValue="#{pit.id}" />
<p:ajax update="checkboxTree" listener="#{cc.attrs.treeInitMethod}" />
</p:selectOneMenu>
<h:outputText value="Mine Time:" />
<h:outputText value="current time" />
<h:outputText value="Deployments From:" />
<p:calendar effect="slideDown"/>
<h:outputText value="Deployments To:" />
<p:calendar effect="slideDown"/>
</h:panelGrid>
</cc:implementation>
</ui:component>
Primefaces 3.0.1
Tomcat 7.0.22
Mojarra JSF 2.1.6
Tomcat 7.0.22
Mojarra JSF 2.1.6
-
- Information
-
Who is online
Users browsing this forum: No registered users and 50 guests