java - atributos - Cómo ajax jsf 2 outputLink
primefaces commandlink listener (1)
Quiero hacer una página web que esté trabajando en ajax (todo ajax). Quiero decir ... cada vez que haces clic en un enlace (me refiero a <h: outputLink ...>) para cambiar un cierto div usando datos de otro enlace.
Por ejemplo:
<h:outputLink value="/page.jsf" onclick="myfunction(this); return false;">
My page
</h:outputLink>
page.jsf es una página jsf normal ... que se muestra con una página layout.xhtml como:
<ui:composition template="/layout.xhtml">
<ui:define name="main">
//my content here
</ui:define>
</ui:composition>
es posible? ¿Es esto posible, usando un servlet para tomar solo fragmentos de un jsf específico?
Mi última solución es usar la función jquery.load ...
Saludos
<h:link>
y <h:outputLink>
no pueden ser ajaxificados. Todas las solicitudes JJA Ajax son por solicitud de POST de especificación. Necesitas a <h:form>
con a <h:commandLink>
.
Puedes usar la siguiente construcción:
<h:form>
<f:ajax render=":include">
<h:commandLink value="Home" action="#{menuManager.setPage(''home'')}" /><br />
<h:commandLink value="FAQ" action="#{menuManager.setPage(''faq'')}" /><br />
<h:commandLink value="Contact" action="#{menuManager.setPage(''contact'')}" /><br />
</f:ajax>
</h:form>
<h:panelGroup id="include">
<ui:include src="#{menuManager.page}.xhtml" />
</h:panelGroup>