Conversor (JSF ou CDI) ViewScoped

Olá a todos, tenho o um Bean CDI ViewScoped onde faço a seguinte consulta:

//Busco os objetos que quero trabalhar em um autocomplete ou selectOneMenu
List<ObjTeste> listaDeObjetos = repository.findAllObjects(); 

No conversor desse objeto tenho o seguinte código:

@Named
public class ObjTesteConverter implements Converter, Serializable{
    
     private static final long serialVersionUID = 1L;

    @Inject
    private ObjRepository objRepository;

    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        if (value != null && value.trim().length() > 0) {
            try {
                return objRepository.findObjById(Integer.parseInt(value));
            } catch (NumberFormatException e) {
                return null;
            }
        } else {
            return null;
        }
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        if (value != "" && value != null) {
            return String.valueOf(((ObjTeste) value).getId());
        } else {
            return null;
        }
    }
}

Vejam que neste código eu tenho uma consulta ao banco de dados desnecessária no converter, já que no Bean CDI eu já tenho o objeto.
Soluções que tentei:

  1. http://wehavescience.com/2012/12/16/converter-generico/
  1. Solução 1 com @Named, @SessionScoped e HashMap na classe em vez de usar os atributos do UIComponent.

Como eu faria para ter um conversor CDI ou até mesmo JSF utilizando o escopo @ViewScoped?

OBS: Sei que o escopo @ViewScoped para CDI é do pacote javax.faces.view e para JSF é javax.faces.bean. Quando me refiro a JSF ou CDI estou dizendo: @ManagedBean ou @Named.