Problema aplicação JSF

Olá a todos. esto iniciand meus estudos em JSF e estou com um pequeno problema na hora de rodas a aplicação. Está acontecendo o seguinte erro:
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: /formulario.xhtml @16,70 value="#{GeradorDeApostasBean.quantidadeDeNumeros}": Target Unreachable, identifier ‘GeradorDeApostasBean’ resolved to null
root cause

javax.el.PropertyNotFoundException: /formulario.xhtml @16,70 value="#{GeradorDeApostasBean.quantidadeDeNumeros}": Target Unreachable, identifier ‘GeradorDeApostasBean’ resolved to null
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 3.1 logs.

Alguém já se deparou com esse problemw?
Será que alguém poderia dar uma força na solução dessa bronca?
obrigado a todos.

Classe bean
package managedbean;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;

import javax.annotation.ManagedBean;
import javax.enterprise.inject.Model;
import javax.persistence.criteria.CriteriaBuilder.In;
import javax.swing.JOptionPane;

@ManagedBean
public class GeradorDeApostasBean {

private int quantidadeDeNumeros = 0;
private int tamanhoAposta = 0;
private int quantidadeDeAposta = 0;

private List<List<Integer>> apostas;

public String geraApostas()
{
	JOptionPane.showMessageDialog(null, "Teste");
	System.out.println("entrou no metodo");
	//Prepara uma lista com todos os números
	ArrayList<Integer> numeros = new ArrayList<Integer>();
	for(int i = 1; i <= this.quantidadeDeNumeros; i++)
	{
		numeros.add(i);
	}
	
	//Cria uma sublista da lista de números
	List<Integer> subLista = numeros.subList(0, tamanhoAposta);
	
	//Lista de apostas vazia
	this.apostas = new ArrayList<List<Integer>>();
	
	//Gera apostas
	for(int i = 0; i < quantidadeDeAposta; i++)
	{
		Collections.shuffle(numeros);
		List<Integer> aposta = new ArrayList<Integer>(subLista);
		this.apostas.add(aposta);
	}
	
	return "lista-de-apostas";
	
}

public GeradorDeApostasBean(){}

public int getQuantidadeDeNumeros() {
	return quantidadeDeNumeros;
}

public void setQuantidadeDeNumeros(int quantidadeDeNumeros) {
	this.quantidadeDeNumeros = quantidadeDeNumeros;
}

public int getTamanhoAposta() {
	return tamanhoAposta;
}

public void setTamanhoAposta(int tamanhoAposta) {
	this.tamanhoAposta = tamanhoAposta;
}

public int getQuantidadeDeAposta() {
	return quantidadeDeAposta;
}

public void setQuantidadeDeAposta(int quantidadeDeAposta) {
	this.quantidadeDeAposta = quantidadeDeAposta;
}

public List<List<Integer>> getApostas() {
	return apostas;
}

public void setApostas(List<List<Integer>> apostas) {
	this.apostas = apostas;
}

}

formulario .xhtml:

<h:head>
Primeiro projeto JSF
</h:head>
<h:body>
<h:form>
<h:panelGrid>
<h:outputLabel value=“Quantidade total de números:”/>
<h:inputText value="#{GeradorDeApostasBean.quantidadeDeNumeros}"/>

		<h:outputLabel value="Quantidade de números por aposta:"/>
		<h:inputText value="#{geradorDeApostasBean.QuatidadeDeAposta}"/>
		
		<h:outputLabel value="Tamanho da aposta"/>
		<h:inputText value="#{geradorDeApostasBean.tamanhoAposta}"/>
		
		<h:commandButton value="Gerar" action="lista-de-apostas"/>
	</h:panelGrid>
</h:form>

</h:body>

Em sua página formulario .xhtml, substitua GeradorDeApostasBean por geradorDeApostasBean.

Espero ter ajudado.

Alterei e ficou do mesmo jeito.

mais alguma dica?. Obrigado pela força.

Ola pnneto3, sei que seu tópico está um pouco antigo, mas também estava com o mesmo problema.

Você precisa definir seu ManagedBean no faces-config.xml:

Ficaria assim dentro do faces-config.xml:

<managed-bean> <managed-bean-name>geradorDeApostasBean</managed-bean-name> <managed-bean-class>managedbeans.GeradorDeApostasBean</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean>

Espero ter ajudado!

Boa noite!!!

famassarotto obrigado pela dica, tbm estava com problema neste exemplo e fiz oque vc sugeriu. Funcionou certinho.

Vlw, Obrigado.

Se vc usa JSF 2 não precisa definir isso no faces-config.xml.

Basta tratar as anotações de forma correta:
@ManagedBean
(Escopo)@SessionScoped ou @RequestScoped ou @ViewScoped conforme a sua necessidade.

Valeu.

Outra coisa, não é muito legal usar componentes Swing (JOptionPane) num Bean cuja função é gerenciar componentes web.

Use as opções de log para testar ou, de uma forma bem mais eficiente, use o Debbug que é muito melhor do que qualquer sysout ou log.

Valeu cara.

Caso alguém venha a ter o mesmo problema, o erro está acontecendo por conta do import para a anotação @ManagedBean.
o correto é: import javax.faces.bean.ManagedBean;
e não: import javax.annotation.ManagedBean;

[quote=apferreira]Caso alguém venha a ter o mesmo problema, o erro está acontecendo por conta do import para a anotação @ManagedBean.
o correto é: import javax.faces.bean.ManagedBean;
e não: import javax.annotation.ManagedBean;[/quote]

Obrigado cara, hoje o seu post me ajudou a resolver um problema, o erro era esse.

Abraços.

Fica com DEUS.