JSF 2 + RichFaces 4

Olá pessoal,

Estou com alguns probleminhas aqui que não consigo solucionar.
As ações de alguns componentes, só são executadas a partir da segunda vez. Por exemplo, tenho o seguinte código que altera o skin da aplicação ao selecionar um item no selectOneRadio, porem só é alterado ao clicar pela segunda vez no item desejado.
Outro problema é com alguns componentes do RichFaces que não são renderizados se não forem inclusos de modo forçado, conforme mostrado no código do layout.
Alguém pode me ajudar, por favor?

Tela:

<!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:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:a4j="http://richfaces.org/a4j"
	xmlns:rich="http://richfaces.org/rich">

<ui:composition template="/WEB-INF/templates/template.xhtml">
	<ui:define name="content">
		<rich:panel header="Selecione o Skin">
			<h:form>
				<h:selectOneRadio value="#{appSkinBean.skin}" border="0"
					onchange="submit()" label="Skins">
					<f:selectItem itemLabel="plain" itemValue="plain" />
					<f:selectItem itemLabel="emeraldTown" itemValue="emeraldTown" />
					<f:selectItem itemLabel="blueSky" itemValue="blueSky" />
					<f:selectItem itemLabel="wine" itemValue="wine" />
					<f:selectItem itemLabel="japanCherry" itemValue="japanCherry" />
					<f:selectItem itemLabel="ruby" itemValue="ruby" />
					<f:selectItem itemLabel="classic" itemValue="classic" />
					<f:selectItem itemLabel="deepMarine" itemValue="deepMarine" />
				</h:selectOneRadio>
			</h:form>
		</rich:panel>
	</ui:define>
</ui:composition>
</html>

Layout:

<!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:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:a4j="http://richfaces.org/a4j"
	xmlns:rich="http://richfaces.org/rich">

<h:head>
	<title><h:outputText value="Teste" /></title>
</h:head>
<h:body>
	<table width="100%" cellpadding="0" cellspacing="5">
		<tr style="height: 100%; vertical-align: top">
			<td colspan="2"><ui:include src="/pages/header.xhtml" /></td>
		</tr>
		<tr style="height: 100%; vertical-align: top">
			<td id="menu" width="200px"><ui:include src="/pages/menu.xhtml" /></td>
			<td id="workArea"><ui:insert name="content">Content</ui:insert></td>
			
			<!-- Forçar o carregamento dos componentes  -->
			<rich:calendar rendered="false"></rich:calendar>
			<rich:dataTable rendered="false"></rich:dataTable>
			<rich:select rendered="false">
				<f:selectItem itemValue="0" itemLabel="Option 1" />
			</rich:select>
			<rich:inputNumberSpinner rendered="false" value="2"/>
			<rich:dataTable rendered="false" >
			<rich:column rendered="false"></rich:column>
			<rich:dataScroller rendered="false" />
			</rich:dataTable>
			<rich:tooltip rendered="false"></rich:tooltip>
			<rich:popupPanel rendered="false"/>
			<!-- fim -->
			
		</tr>
	</table>
</h:body>
</html>

Bean:

package br.com.teste.bean;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

@ManagedBean
@SessionScoped
public class AppSkinBean {

	private String skin = "deepMarine";

	public String getSkin() {
		return skin;
	}

	public void setSkin(String skin) {
		this.skin = skin;
	}

	public String configurarSkin() {
		return "configurarSkin";
	}

}

Veja se ajuda:

http://serjaum.wordpress.com/2010/07/14/jsf-alterando-skin-richfaces-em-tempo-de-execucao/

Olá leonardobrancalhao obrigado,

Mas meu código está “funcionando” o problema deve ser alguma coisa referente a renderização, não sei se da forma com que eu fiz a tela no layout pode dar algum problema desse.

Alguém tem alguma sugestão?