Selecionar usuario do banco de dados - JSF

Pessoal já quebrei a cabeça para tentar fazer e não consigo. Estou querendo listar os usuário do banco de dados em uma tag.
Estou fazendo da seguinte forma.

Metodo que lista no managed bean:
public ArrayList getListUsuario(){ UsuarioBusiness pb = new UsuarioBusiness(); user2 = pb.listarUsuario(); return user2; }

Minha classe Business:

public ArrayList listarUsuario() { usuarioDAO = new UsuarioDAO(); return usuarioDAO.listarUsuario(); }

Minha camada de persistencia:

public ArrayList listarUsuario() { EntityTransaction transaction = manager.getTransaction(); List<Usuario> retorno = new ArrayList(); try { Query query = manager.createQuery("SELECT u FROM Usuario u"); retorno = (List<Usuario>) query.getResultList(); for (Usuario usuario : retorno) { Usuario user = new Usuario(); user.setId(usuario.getId()); user.setNome(user.getNome()); retorno.add(user); } } catch (Exception e) { transaction.rollback(); System.err.println("Erro: " + e.getMessage()); } finally { manager.close(); } return (ArrayList) retorno; }

Minha tentativa de exibir a lista de usuarios:

<h:selectOneListbox id="nome" size="1" value="#{usuario.user.nome}"> <f:selectItem value="usuario.user2" /> </h:selectOneListbox>
Alguem sabe pq ta dando errado?

No Managed Bean

	public List<SelectItem> getSelectUsuarios() {
		List<Usuario> listaUsuarios = getListUsuario();
		List<SelectItem> listaSelect = new ArrayList<SelectItem>();

		for (Usuario u : listaUsuarios) {
			listaSelect.add(new SelectItem(new Integer(u.getId()), u.getNome()));
		}

		return listaSelect;
	}

No JSF

<f:selectItems value="#{usuario.selectUsuarios}" />

E como ficaria este selectItem já que no meu não existe nenhum selectItem?