[ajuda urgente] Como navegar entre páginas usando a4j

Olá pessoal,

O problema é o seguinte:

Quero montar uma rich:tree no lado esquerdo e uma área onde será renderizada as páginas chamadas pelos a4j:commandLink e buttom.
Eu 'chamo' a página pela tree dessa forma:

<h:panelGrid columns="2" id="treeMenu">
	<a4j:form id="f_menucont">
		<rich:tree var="item" value="#{treeMenuBean.raiz}" style="width:150;">
			<rich:treeNode>
				<a4j:commandLink value="#{item.navrule}" reRender="pagina">
					<f:param id="pageParam" name="page" value="#{item.navrule}" />
				</a4j:commandLink>
			</rich:treeNode>
		</rich:tree>
	</a4j:form>
		<h:panelGrid columns="1" id="pagina">
			<ui:param name="page"
				value="#{empty param.page ? 'branco' : param.page}" />
			<ui:include src="#{page}.xhtml" />
		</h:panelGrid>
</h:panelGrid>

Todavia se eu precisar usar o a4j:commandLink dentro das páginas ‘chamadas’ esta não funciona.

Em suma eu gostaria de saber como eu poderia montar minha navegação de páginas usando a4j de modo a conseguir fazer uma estrutura menu+crud.

Obs.: Já tentei usar o
http://www.rponte.com.br/2008/04/10/utilizando-ajax-com-jsf-de-maneira-eficiente/
e está dando muitos problemas: link dentro do datatable não funciona, não passa valores, etc.

Quem puder enviar os fontes básicos de um exemplo eu agradeço.