Erro ManagedBean - HTTP Status 500

Galera bom dia, estou com uma dúvida sobre meu projeto não estar rodando as páginas xhtml fala que o erro é no MB

O web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
	version="3.0">
	<display-name>01-Primefaces</display-name>
	<servlet>
		<servlet-name>Faces Servlet</servlet-name>
		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
		<load-on-startup>1</load-on-startup>
		<enabled>true</enabled>
		<async-supported>false</async-supported>
	</servlet>
	<servlet-mapping>
		<servlet-name>Faces Servlet</servlet-name>
		<url-pattern>*.xhtml</url-pattern>
		<url-pattern>*.jsf</url-pattern>
	</servlet-mapping>

	<!-- alterar o tema do primefaces -->
	<context-param>
		<param-name>primefaces.THEME</param-name>
		<param-value>midnight</param-value>
	</context-param>
</web-app>

A página xhtml

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
	xmlns:h="http://xmlns.jcp.org/jsf/html"
	xmlns:f="http://xmlns.jcp.org/jsf/core"
	xmlns:p="http://primefaces.org/ui">

<ui:composition template="_template.xhtml">
	<ui:define name="content">
	    <p:panel header="Cadastro Treinador" toggleable="true">
	    	<p:messages autoUpdate="true"/>
	    	<p:growl autoUpdate="true"/>
	    	<h:form>
	    		<h:panelGrid columns="2">
	    			<p:outputLabel for="nome" value="Nome"/>
	    			<p:inputText id="nome" 
	    				value="#{treinadorBean.treinador.nome}"/>
	    				
	    			<p:outputLabel for="cpf" value="CPF"/>
	    			<p:inputMask mask="999.999.999-99" id="cpf"
	    				value="#{treinadorBean.treinador.cpf}"/>
	    				
	    			<p:outputLabel for="data" value="Data Inicio"/>
	    			<p:calendar id="data" pattern="dd/MM/yyyy"
	    				value="#{treinadorBean.treinador.dataInicio.time}"/>
	    				
	    			<p:commandButton value="Enviar"
	    				actionListener="#{treinadorBean.cadastrar}"/>		    					
	    		</h:panelGrid>
	    	</h:form>
	    </p:panel>
	</ui:define>	
</ui:composition>
</html>

E o managedBean

    package br.com.sistema.bean;

    import java.util.Calendar;

    import javax.annotation.PostConstruct;
    import javax.faces.application.FacesMessage;
    import javax.faces.bean.ManagedBean;
    import javax.faces.bean.RequestScoped;
    import javax.faces.context.FacesContext;

    import br.com.sistema.dao.TreinadorDAO;
    import br.com.sistema.dao.impl.TreinadorDAOImpl;
    import br.com.sistema.entity.Treinador;
    import br.com.sistema.exception.DBException;
    import br.com.sistema.singleton.EntityManagerFactorySingleton;

    @ManagedBean
    @RequestScoped
    public class TreinadorBean {

    	private Treinador treinador;
    	private TreinadorDAO dao;
    	
    	@PostConstruct
    	private void init(){
    		treinador = new Treinador();
    		treinador.setDataInicio(Calendar.getInstance());
    		
    		dao = new TreinadorDAOImpl(EntityManagerFactorySingleton.getInstance());
    	}
    	
    	//clique do botão
    	public void cadastrar(){
    		FacesMessage msg;
    		try {
    			dao.inserir(treinador);
    			msg = new FacesMessage("Cadastrado!");
    		} catch (DBException e) {
    			e.printStackTrace();
    			msg = new FacesMessage("Erro");
    		}
    		FacesContext.getCurrentInstance().addMessage(null, msg);
    	}
    	
    	public Treinador getTreinador() {
    		return treinador;
    	}
    	
    	public void setTreinador(Treinador treinador) {
    		this.treinador = treinador;
    	}
    	
    }

Só que quando eu vou rodar aparece esse erro

Que erro pode ser?