Criando projeto com CDI

estou criando meu projeto usando JSF e Primeface e quero usar CDI, alguém poderia me dar uma Força?

1 - Já coloquei a dependencia do Weld,
2 - Dentro WebApp criei uma Pasta META-INF onde tem um arquivo beans.xml
3 - adicionei no web.xml

       <listener>
		<listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
</listener>

                                                                                                                                                          <resource-env-ref>
	<resource-env-ref-name>BeanManager</resource-env-ref-name>
	<resource-env-ref-type>javax.enterprise.inject.spi.BeanManager</resource-env-ref-type>
</resource-env-ref>

Esse é o Meu DAO

public class FabricanteDAO implements Serializable {`

private static final long serialVersionUID = 1L;

private EntityManager em;

public void salvar(Fabricante fabricante) {
	em.merge(fabricante);
}

public List<Fabricante> buscarTodos() {
	return em.createQuery("from Fabricante", Fabricante.class).getResultList();
}

public void excluir(Fabricante fabricante) throws NegocioException {
	try {
		Fabricante fabricanteTemp = this.buscarPeloCodigo(fabricante.getCodigo());
	
		em.remove(fabricanteTemp);
		em.flush();
	} catch (PersistenceException e) {
		throw new NegocioException("Fabricante não pode ser excluído.");
	}
}

public Fabricante buscarPeloCodigo(Long codigo) {
	return em.find(Fabricante.class, codigo);
}

}

Não está correto a configuração, vamos lá.

1 - Se o projeto é web(.war) o arquivo beans.xml deve ficar em src/main/webapp/WEB-INF/beans.xml, se o projeto fosse standalone(.jar) o arquivo beans.xml deve ficar em src/main/resources/META-INF/beans.xml
2 - Em src/main/webapp/META-INF criei um arquivo chamado context.xml com o seguinte conteúdo:

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/nomeDoSeuProjeto">
  <Resource auth="Container" factory="org.jboss.weld.resources.ManagerObjectFactory" name="BeanManager" type="javax.enterprise.inject.spi.BeanManager"/>
</Context>

3 - Bibliotecas utilizadas(pode usar as versões de sua preferência)

<!-- CDI - Dependence Injection -->
<dependency>
    <groupId>org.jboss.weld</groupId>
    <artifactId>weld-core</artifactId>
    <version>2.4.0.Final</version>
</dependency>

<dependency>
    <groupId>org.jboss.weld.servlet</groupId>
    <artifactId>weld-servlet</artifactId>
    <version>2.4.0.Final</version>
</dependency>

Obs: estas configurações se aplicam a servlet containers(tomcat, jetty, etc…), não se aplicam a application servers como wildfly que já possui CDI nativo.

http://blog.caelum.com.br/use-cdi-no-seu-proximo-projeto-java/

entendi, só uma duvida o que é um projeto Standlone? vi que existe uma pasta com esse mesmo nome no wildfly

Bom, a palavra standalone esta mais carregada que a minha explicação, mas não confundindo você, um projeto standalone é um .jar e que não depende de nada além da JVM para rodar, claro que também pode ter dependências de outros .jars, mas neste caso é um projeto self-contained.