Hi Tobago,
I was surprized by the difference there is between the jsp and facelets
approch: even though I use the same tags, the result is sometimes totally
different:
I had a working popup in a jsp with the following code:
<tc:box label="#{i18n.adresseListBox}">
<f:facet name="toolBar">
<tc:toolBar id="aressesToolBar">
<tc:toolBarCommand id="newAdressCmd" image=
"image/new.GIF"
tip="#{i18n.newAdressCmd}" action="#{
personCtrl.newAdressCmd}">
<tc:attribute name="renderedPartially"
value="newAdressPopup"
/>
<f:facet name="popup">
<tc:popup id="newAdressPopup" width="600"
height="140">
<tc:box label="#{i18n.newAdressCmd
}">
<f:facet name="layout">
<tc:gridLayout
rows="*;20px"
/>
</f:facet>
<f:subview id="newAdress">
<jsp:include flush="true"
page="adress.xhtml" />
</f:subview>
<tc:cell>
<f:facet name="layout">
<tc:gridLayout
columns="100px;1*;100px" marginLeft="10px"
marginRight
="10px" />
</f:facet>
<tc:button label="#{
i18n.ok}"
action="#{
personCtrl.addAdressCmd}">
<tc:attribute
name="popupClose" value="afterSubmit" />
</tc:button>
<tc:cell />
<tc:button label="#{
i18n.cancel}">
<tc:attribute
name="popupClose" value="immediate" />
</tc:button>
</tc:cell>
</tc:box>
</tc:popup>
</f:facet>
</tc:toolBarCommand>
</tc:toolBar>
</f:facet>
...
When I changed this same code under facelets, the popup stoped displaying
and I have an error messagein my log:
(I also attempted to change jsp:include to ui:include)
15:01:20,046 INFO [STDOUT] 2007-09-06 15:01:20,046 [http-127.0.0.1-8080-3]
ERROR org.apache.myfaces.custom.ajax.api.AjaxDecodePhaseListener.decodeAjax(173)
- Found component is no ajaxComponent : {Component-Path : [Class:
org.apache.myfaces.tobago.component.UIViewRoot,ViewId:
/person/person.xhtml][Class: org.apache.myfaces.tobago.component.UIPage,Id:
page][Class: org.apache.myfaces.tobago.component.UIPanel,Id: j_id5][Class:
org.apache.myfaces.tobago.component.UICell,Id: j_id16][Class:
org.apache.myfaces.tobago.component.UIForm,Id: personForm][Class:
org.apache.myfaces.tobago.component.UIPanel,Id: j_id17][Class:
org.apache.myfaces.tobago.component.UIPanel,Id: clientDetails][Class:
javax.faces.component.UINamingContainer,Id: details][Class:
org.apache.myfaces.tobago.component.UITabGroup,Id: j_id26][Class:
org.apache.myfaces.tobago.component.UITab,Id: personDetailTab][Class:
org.apache.myfaces.tobago.component.UIPanel,Id: personDetailPanel][Class:
org.apache.myfaces.tobago.component.UICell,Id: j_id44][Class:
javax.faces.component.UINamingContainer,Id: adressListSubview][Class:
org.apache.myfaces.tobago.component.UIBox,Id: j_id45][Class:
org.apache.myfaces.tobago.component.UIToolBar,Id: aressesToolBar][Class:
org.apache.myfaces.tobago.component.UICommand,Id: newAdressCmd][Class:
org.apache.myfaces.tobago.component.UIPopup,Id: newAdressPopup]}
15:01:20,078 INFO [STDOUT] 2007-09-06 15:01:20,078 [http-127.0.0.1-8080-3]
DEBUG org.apache.myfaces.tobago.component.UIPage.markSubmittedForm(156) -
actionId = 'page'
I don't now where to debug: I entred to
org.apache.myfaces.custom.ajax.api.AjaxDecodePhaseListener.decodeAjax(UIComponent,
FacesContext) but I don't have a clue from where I should begin...
I've also searched in the forum for the keys "[tobago] popup facelets" and
"[tobago] Found component is no ajaxComponent" with no result.
If anyone knows how to proceed, thanks a lot to share the info.
Regards,
Zied
--
Zied Hamdi
zatreex.sourceforge.net