Erro distinct

Estou tentando fazer uma consulta para buscar os valores de um campo (sem repetição) utilizando DISTINCT e estou tendo o seguinte erro:

itemLabel="#{tab.campo}": The class 'java.lang.String' does not have the property 'campo'.

minha consulta e minha pagina estao assim:

DAO

public List<Tabela> listarCampos() {

	return getEntityManager()
			.createQuery(
					"SELECT DISTINCT tab.campo FROM Tabela tab").getResultList();

}

.............................................................................................................................................

Bean

public List<Tabela> getListaCampos() {
		
	listaCampos = dao.listarCampos();
	
	return listaCampos;
}

.............................................................................................................................................

index

<p:selectOneMenu id="campo">
	<f:selectItem itemLabel="Selecione ..." itemValue="0" />
	<f:selectItems value="#{bean.listaCampos}" var="tab" itemLabel="#{tab.campo}" itemValue="c.campo" />
</p:selectOneMenu>