Duvida em JSF -> selectOneMenu

Bom dia… estou com uma duvida no selectOneMenu, eu crio um selectOneMenu e funciona normalmente porém quando recupero os resultados ele nao recupera se o itemLabel não for igual ao itemValue, veja o exemplo

	<h:selectOneMenu id="pessoa"
		value="#{clientePessoaView.clienteEndereco.tipo}">
		<f:selectItem itemLabel="Residencial" itemValue="0" />
		<f:selectItem itemLabel="Comercial" itemValue="1" />
	</h:selectOneMenu>

se fosse assim ele funcionaria

	<h:selectOneMenu id="pessoa"
		value="#{clientePessoaView.clienteEndereco.tipo}">
		<f:selectItem itemLabel="Residencial" itemValue="Residencial" />
		<f:selectItem itemLabel="Comercial" itemValue="Comercial" />
	</h:selectOneMenu>

se alguém puder ajudar fico grato

Posso estar enganado, ou errado mesmo, mas vc está tentando passar um valor inteiro num atributo do tipo String? Quem é tipo?

[]`s

O argumento no DB é inteiro, mas na parte visual quero que apareça como um nome String, mas o value tem que continuar como inteiro

Então quando vc abrir essa página vc vai popular o atributo tipo com um inteiro, este que está vindo do banco.

então quando a página dar um get em Tipo: clientePessoaView.getClienteEndereco.getTipo que será igual a 1 ou 0, assim o componente reconhece o valor e imprime conforme vc definiu.

que 1 é Comercial
e 0 é Residencial.

ai está o problema eu coloco o valor conforme o itemValue, um inteiro 0 ou 1 e ele não popula com o correto, na verdade ele deixa sempre no padrao