JSF disabled="#{value}" não funciona

Boa tarde caros amigos do GUJ, tenho uma aplicação desenvolvida utilizando JSF e estou com o seguinte problema:
Partindo de uma tela(página) qualquer, quando a aplição é redirecionada pelo controlador de paginas da mesma para um página
X eu passo por uma acao do commandButton e dentro desta acao eu dou um setVariavel(…) para que o efeito desta se prolongue
na pagina X. Na verdade eu preciso habiltar/desabilitar campos dependendo de uma condição que tenho no negócio da minha aplicação;
Porém o efeito de setVariavel não se prolonga na página X. De acordo com a sequência do código fonte que segue notem melhor o problema.

Exemplo de botão que chama a pagina X.


<p:commandButton id="cbOk" value="OK" action="#{ProtocoloBean.redirectFormProtocolo}"/>

Ação disparada no controlador/MBean, o que enteressa é o método disableTabeds.

public String redirectFormProtocolo() {
		...
		disableTabeds();
		return "/view/protocoloAlteracaoDadosPessoais.xhtml?faces-redirect=true";
}

public void disableTabeds(){
		
		if ( ( getProtocolo().getEstruturaOrganizacional().getIdUnidade() != getProtocolo().getFuncionario().getEstruturaOrganizacional().getIdUnidade() )
			 && ( getProtocolo().getStatusProtocolo().getIdStatusProtocolo() == 1) ){
			
			this.setDisabled_0(Boolean.FALSE);
			this.setDisabled_1(Boolean.FALSE);
			this.setDisabled_2(Boolean.TRUE);
			this.setDisabled_3(Boolean.FALSE);
			
		}else if( (getProtocolo().getEstruturaOrganizacional().getIdUnidade() != getProtocolo().getFuncionario().getEstruturaOrganizacional().getIdUnidade() )
			 && ( getProtocolo().getStatusProtocolo().getIdStatusProtocolo() == 2 ) ) {
			
			this.setDisabled_0(Boolean.TRUE);
			this.setDisabled_1(Boolean.TRUE);
			this.setDisabled_2(Boolean.FALSE);
			this.setDisabled_3(Boolean.FALSE);
			
		}else if(( getProtocolo().getEstruturaOrganizacional().getIdUnidade() != getProtocolo().getFuncionario().getEstruturaOrganizacional().getIdUnidade() )
			 && ( getProtocolo().getStatusProtocolo().getIdStatusProtocolo() == 4 ) ) {

			this.setDisabled_0(Boolean.TRUE);
			this.setDisabled_1(Boolean.TRUE);
			this.setDisabled_2(Boolean.TRUE);
			this.setDisabled_3(Boolean.TRUE);
			
		}
	}

Trecho da pagina X onde os campos serão habilitados ou desdabilitados.

	<h:outputLabel id="olDeficiencia" value="Deficiência:" for="somDeficiencia" onfocus="true" />
									<h:selectOneMenu id="somDeficiencia" value="#{ProtocoloBean.protocolo.deficiencia.idDeficiencia}" disabled="#{disabled_0}">
										<f:selectItem itemLabel="Não Possui" itemValue="0" />									
										<f:selectItems value="#{UtilidadesController.listaDeficiencia}" var="listaDef"
										itemLabel="#{listaDef.nmDeficiencia}" itemValue="#{listaDef.idDeficiencia}" />
									</h:selectOneMenu>																
									

									<h:outputLabel id="olPerfilSaude" value="Perfil de Saúde:"
										for="somPerfilSaude" onfocus="true" />
									<h:selectOneMenu id="somPerfilSaude" value="#{ProtocoloBean.protocolo.perfilSaude.idPerfilSaude}" disabled="#{disabled_0}">
										<f:selectItem itemLabel="Não Possui complicações" itemValue="0" />									
										<f:selectItems value="#{UtilidadesController.listaPerfilSaude}" var="listaPerSaude"
										itemLabel="#{listaPerSaude.nmPerfilSaude}" itemValue="#{listaPerSaude.idPerfilSaude}" />
									</h:selectOneMenu>		
	
                                                                     ..................

Não funciona de forma alguma, de todo jeito os campos na pagina X permanecem habilitados.
Parece ter a ver com a instância das variáveis acessadas para habilitar/desabilitar os campos na pagina X no momento que ela é montada ser anterior ao momento que eu modifico
os valores destas variáveis.

Alguém pode me ajudar?

Um abraço e obrigado pela atenção.

Antes que alguém pergunte, eu fiz o método get de cada variavel corretamente no MBEAN.

MBEAN.disabled_0 ??

Sim disabled_0, disabled_1, disabled_2… são essas as variáveis…

Putz, era isso mesmo amigo. Obrigado…