Hi
I just downloaded and added the Primefaces 3.0 nightly build 320 and I have been getting a series of following messages.
INFO: Cannot find component with identifier "dialogPanel" in view.
INFO: Cannot find component with identifier "productGridPanel" in view.
INFO: Cannot find component with identifier "shoppingListDetailsPanel" in view.
INFO: Cannot find component with identifier "shoppingListDetailsPanel" in view.
INFO: Cannot find component with identifier "shoppingListDetailsPanel" in view.
INFO: Cannot find component with identifier "shoppingListDetailsPanel" in view.
INFO: Cannot find component with identifier "shoppingListDetailsPanel" in view.
All these are p:outputPanel used in the page which is being rendered.
some more information
1. The ids of the panels listed in the messages are being referred to in update attributes in p:commandLink elements elsewhere in the page.
2. Since the commandLink is used in dataTable and dataGrid it is repeating as many times as the number of rows (understandably).
3. There is just one form in the page so I am not (have never) qualified the ids with form:elementId notation.
This was working just fine until Friday while I was on the earlier build I was using - Build number 307. Unfortunately (stupid me), I did not retain that zip and the download site does not have it.
Anybody else seeing these errors?
Here is the code
<p:commandLink update="shoppingListDetailsPanel" oncomplete="shoppingDialog.show()" styleClass="ui-icon ui-icon-cart" title="#{bundle.ConfirmShopping}" style="display:inline-block;width:16px;">
<f:setPropertyActionListener target="#{homeController.selectedList}" value="#{item}"/>
</p:commandLink>
<p:outputPanel id="shoppingListDetailsPanel">
<p:dialog id="shoppingListDetailsDialog" header="#{homeController.selectedList.listName}" width="540" height="400" closable="true" closeOnEscape="true" visible="false" draggable="true"
position="absolute" resizable="false" widgetVar="shoppingDialog" zindex="1000">
<h5 style="margin:5px 0 0 40px;width:40%" >Shopping List Items</h5>
<p:dataTable id="shoppingListTable" value="#{homecontroller.selectedList.listContentList}" var="entry"
liveScroll="true" emptyMessage="#{bundle.NoItemsAddedYet}" height="300" style="margin:5px 0 20px 40px;width:40%" >
<p:column headerText="#{bundle.ListListContentTitle_item}">
<h:outputText value="#{entry.product.productName}" rendered="#{!empty entry.product.productName}" />
<h:outputText value="#{entry.customProductName}" rendered="#{!empty entry.customProductName}" />
</p:column>
<p:column headerText="#{bundle.ListListContentTitle_quantity}">
<h:inputText value="#{entry.quantity}" maxlength="4" styleClass="foyo-input" size="3">
<f:validateLength minimum="1" maximum="100"/>
</h:inputText>
</p:column>
<p:column headerText="#{bundle.ListListContentTitle_uom}">
<h:selectOneListbox id="selectUom" value="#{entry.uom}" size="1"><f:selectItems value="#{staticCacheManager.unitNotationList}"/></h:selectOneListbox>
</p:column>
<p:column headerText="X" >
<p:commandLink id="removeFromList" immediate="true" update="shoppingListDetailsPanel" styleClass="ui-icon ui-icon-closethick" actionListener="#{shoppingController.removeItem(entry)}"/>
</p:column>
</p:dataTable>
</p:dialog>
</p:outputPanel>
PF3.0:p:outputPanel Cannot find component with ID
Last edited by smallya on 12 Apr 2011, 17:23, edited 4 times in total.
Netbeans 7.2| GlassFish 3.2 | PostgreSQL 9.1| MongoDB | Primefaces 3.4.2
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
I saw this new attribute called "autoUpdate" in <p:outputPanel>. Assuming it to be a true/false value I tried both - but in vain. Not sure if it had anything to do with the issue that I am seeing.
I had not seen the autoUpdate attribute before and did not find any issue in the issue list that might have requested this addition. I am guessing that is something PF team added as some enhancement.
I had not seen the autoUpdate attribute before and did not find any issue in the issue list that might have requested this addition. I am guessing that is something PF team added as some enhancement.
Netbeans 7.2| GlassFish 3.2 | PostgreSQL 9.1| MongoDB | Primefaces 3.4.2
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
I downloaded PF 3.0M1 and still get the same errors. Actually it seems to come for each p:outputPanel so far.
Netbeans 7.2| GlassFish 3.2 | PostgreSQL 9.1| MongoDB | Primefaces 3.4.2
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
I went back to PF 2.2.1 and the errors seems to go away indicating it is is only happening in 3.0.x and 3.0M1
But unfortunately i want to be in 3.0M1 as I have already converted my mobile app from Touch to Prime Mobile and it works like a charm.
But unfortunately i want to be in 3.0M1 as I have already converted my mobile app from Touch to Prime Mobile and it works like a charm.
Netbeans 7.2| GlassFish 3.2 | PostgreSQL 9.1| MongoDB | Primefaces 3.4.2
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
-
- Prime
- Posts: 18616
- Joined: 05 Jan 2009, 00:21
- Location: Cybertron
- Contact:
That are not errors but info messages indicating that findComponent method cannot find the actual component in view so instead will fallback to the provided id.
Standard JSF 2 ajax throws an exception when it cannot find the component, PrimeFaces will just uses the provided the id instead, this was causing silent potential errors in the past so we just do a log before using the provided id now.
See the algorithm for more info;
http://download.oracle.com/javaee/6/api ... ng.String)
Standard JSF 2 ajax throws an exception when it cannot find the component, PrimeFaces will just uses the provided the id instead, this was causing silent potential errors in the past so we just do a log before using the provided id now.
See the algorithm for more info;
http://download.oracle.com/javaee/6/api ... ng.String)
Thanks Cagatay. Agree they were just INFO messages - was just curious why they started all of a sudden. Thanks for the clarification.
Last edited by smallya on 18 Apr 2011, 04:55, edited 1 time in total.
Netbeans 7.2| GlassFish 3.2 | PostgreSQL 9.1| MongoDB | Primefaces 3.4.2
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
Of course. You have reason. However I could not solve it yet. You could demonstrate, if possible, how to fix this in my code, forgive the ignorance, but this is very important to me."so we just do the logging before using the id Provided now."
Thanks Cagatay, I feel honored by your response.
amazu,
This information is only logged with the PROJECT_STAGE is set to Development in your web.xml. Change it to Production and then the statements are no longer logged
If you did not have this parameter in your web.xml then this is what you should add.
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
</context-param>
This information is only logged with the PROJECT_STAGE is set to Development in your web.xml. Change it to Production and then the statements are no longer logged
If you did not have this parameter in your web.xml then this is what you should add.
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Production</param-value>
</context-param>
Netbeans 7.2| GlassFish 3.2 | PostgreSQL 9.1| MongoDB | Primefaces 3.4.2
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
_______________________________________________________________
Subraya Mallya
http://tinyhabit.com |http://twitter.com/tinyhabit
ops .. sorry my fault, I meant to do with the code below (my listener), which forces an update on the component:
... since it is causing a NullPointerException, because most can not find the component "dialog".
Fix the problem with code below:
... but there seems to be the appropriate solution.
Thanks for the reply.
Code: Select all
public void beforePhase(PhaseEvent event) {
PhaseId phaseid = event.getPhaseId();
if ((phaseid == PhaseId.RENDER_RESPONSE )) {
event.getFacesContext().getPartialViewContext().getRenderIds().add("dialog");
}
}
Fix the problem with code below:
Code: Select all
public void beforePhase(PhaseEvent event) {
PhaseId phaseid = event.getPhaseId();
if ((phaseid == PhaseId.RENDER_RESPONSE )) {
RequestContext context = RequestContext.getCurrentInstance();
if(context!=null){
context.addPartialUpdateTarget("dialog");
}
}
}
Thanks for the reply.
Sorry for posting in an old thread, but do we use something the wrong way when we get those messages? How can we avoid them (without manipulating the loglevel)?That are not errors but info messages indicating that findComponent method cannot find the actual component in view so instead will fallback to the provided id.
PrimeFaces 3.2
Mojarra 2.0.2
Glassfish 3.0.1
Mojarra 2.0.2
Glassfish 3.0.1
-
- Information
-
Who is online
Users browsing this forum: Google [Bot] and 31 guests