RichFaces - DataTable render

Pessoal,

Sou novo no fórum e gostaria de uma solução para um problema que estou tendo para mostrar os valores no datatable de acordo com a seleção no radioButton
quando eu seleciono uma opção do radioButton deveria vir apenas o que eu seleciono no entanto não esta fazendo nada;
Segue o meu código

listagemCarros.xml

<rich:extendedDataTable id="carrosListagem" value="#{carroListarBean.carros}" 
		var="carros" rowClasses="linha1, linha2" selection="#{carroListarBean.Selecionado}"
		rows="10"
		selectionMode="single">
					
		<a4j:ajax execute="carrosListagem" event="selectionchange" listener="#{carroListarBean.selectionListener}" render="detalhar" />	
						
		<rich:column>
		 <f:facet name="header">
		Código<br/>
		<h:inputText id="codigo" value="#{carroListarBean.codigo}" size="3" onfocus="this.value = this.value;" />
		</f:facet>
		<h:outputText value="#{carro.codigo}"/>
		</rich:column>
						
		<rich:column>
			<f:facet name="header">
		Placa<br/>
			<h:inputText id="carro" value="#{carroListarBean.placa}" size="3" onfocus="this.value = this.value;" />
			</f:facet>
		<h:outputText value="#{carro.placa}"/>
		</rich:column>

		<rich:column>
		  <f:facet name="header">
		Tipo de Carro<br />
		<h:selectOneRadio value="#{carroListarBean.tipoCarro}" id="tipo">
		   <f:selectItem itemLabel="Própio" itemValue="P"/>
		   <f:selectItem itemLabel="Alugado" itemValue="A"/>
		</h:selectOneRadio>
		</f:facet>
		#{carro.tipoCarro eq 'P' ? 'Próprio' : 'Alugado'}
		</rich:column>

<rich:column styleClass="center" width="60px">
	<f:facet name="header">
	<a4j:commandButton actionListener="#{carroListarBean.filtrar}" 
	image="/resources/img/update.png"
	render="carrosListagem" immediate="true" execute="@form" />
	</f:facet>
	<h:commandButton image="/resources/editar.png" value="Editar" action="#{carroInserirBean.editListener(carro.codigo)}"/>
</rich:column>

carroListarBean.java

public void filtrar() {
		if (tipoCarro == null) 
		tipoCarro = "P";
		carros = new ArrayList<Carros>(carrosFabrica);
		
		for (Iterator<Carro> it = carros.iterator(); it.hasNext();) {
			Carro carro = it.next();
			if (!StringUtils.isEmpty(filtroCodigo) && (carro.getCodigo() == null || !carro.getCodigo().toUpperCase().contains(filtroCodigo.toUpperCase())) )
				it.remove();
			else if (!StringUtils.isEmpty(filtroPlaca) && !carro.getPlaca().equals(new Integer(filtroPlaca)))
				it.remove();
			else if (!StringUtils.isEmpty(tipoCarro) && (carro.getTipoCarro() == null || !carro.getTipoCarro().toLowerCase().startsWith(tipoCarro.toLowerCase())))
				it.remove();
		}
	}

Quando eu clico no tipoCarro não mostra nada no dataTable o que estou fazendo errado? Alguém poderia ajudar?