selectOneMenu nao seta valores

INCLUIR ALTERA NORMAL MAIS QUANDO EU ESCOLHO O CLIENTE E RETURN OS selectOneMenu NAO SETA O OBJETO

FORM COMPUTADOR

	<h:outputLabel for="cliente" value="Cliente:" style="font-weight:bold" />
        				 <p:selectOneMenu id="cliente" value="#{ComputadorBean.computador.cliente}" effect="fade" converter="clienteConverter"
        				 required="#{param['f:btnGravarComputador'] != null}" requiredMessage="Escolha um Cliente">
        				 <f:selectItem itemLabel="Selecione Cliente" itemValue="" /> 
            			<f:selectItems value="#{ComputadorBean.listCliente}" var="cliente" itemLabel="#{cliente.razaoSocial}" itemValue="#{cliente}"/>
        				</p:selectOneMenu>

COMPUTADOR BEAN


	public List<Cliente> getListCliente() {
		if(listCliente == null){
			listCliente = clienteDao.findAll("Cliente","razaoSocial");
		}
		return listCliente;
	}

	public void setListCliente(List<Cliente> listCliente) {
		this.listCliente = listCliente;
	}

	public void onRowSelect(SelectEvent event) {
		try {
			this.computador = (Computador) event.getObject();
			if (id == computador.getId()) {
				System.out.print(computador.getCliente().getRazaoSocial());
				tabIndex = 0;
				id = 0;
			} else {
				id = computador.getId();
			}
		} catch (Exception ex) {
			UtilFaces.addMensagem("Error.: " + ex.getMessage());
		}
	}
@FacesConverter(value = "clienteConverter", forClass = Cliente.class)
public class ClienteConverter implements Converter {

	public Object getAsObject(FacesContext ctx, UIComponent component, String value) {
		if (value != null) {
			return this.getAttributesFrom(component).get(value);
		}
		return null;
	}

	public String getAsString(FacesContext ctx, UIComponent component, Object value) {
		if (value != null && !"".equals(value)) {
			Cliente entity = (Cliente) value;
			// adiciona item como atributo do componente
			this.addAttribute(component, entity);
			Integer codigo = entity.getId();
			if (codigo != null) {
				return String.valueOf(entity.getId());
			}
		}
		return (String) value;
	}

	protected void addAttribute(UIComponent component, Cliente cliente) {
		String key = String.valueOf(cliente.getId()); // codigo da empresa como chave neste
											// caso
		this.getAttributesFrom(component).put(key, cliente);
	}

	protected Map<String, Object> getAttributesFrom(UIComponent component) {
		return component.getAttributes();
	}
}