JSF e Hibernate Resolvido

Srs, boa tarde!

Eu estou iniciando meu aprendizado com Hibernate e JSF. Eu criei um formulário com quatro campos simples. Eu tenho um banco de dados com nome ERP2 e criei via Hibernate uma tabela com nome Empresa.

Quando eu faço o action via formulário por algum motivo o console retorna a informação que eu não tenho a tabela erp2.empresa. Quando na verdade o nome da minha tabela deveria apenas ser empresa.

Segue o fonte, agradeço antecipadamente.

Formulário.

<h:panelGrid columns="2">
			  		<h:outputLabel value="Razão Social:" for="razaoSocial" />
			  		<h:inputText id="razaoSocial" value="#{empresaBean.empresa.razaoSocial}"  /> 
			  		
			  		<h:outputLabel value="CNPJ:" for="cnpj" />
			  		<h:inputText id="cnpj" value="#{empresaBean.empresa.cnpj}" /> 
			  		
			  		<h:outputLabel value="Inscr. Estadual" for="inscrEstad" />
			  		<h:inputText id="inscrEstad" value="#{empresaBean.empresa.inscrEstad}" />
			  		<h:commandButton value="Gravar" action="#{empresaBean.gravar}"/>
			  	</h:panelGrid>

Classe EmpresaBean

@ManagedBean
public class EmpresaBean {

	private Empresa empresa = new Empresa();

	public Empresa getEmpresa() {
		return empresa;
	}

	public void gravar() {
		System.out.println("Gravando Empresa:" + this.empresa.getRazaoSocial());

		new DAO<Empresa>(Empresa.class).adiciona(this.empresa);
	}

}

DAO

public class DAO<T> {

	private final Class<T> classe;

	public DAO(Class<T> classe) {
		this.classe = classe;
	}

	public void adiciona(T t) {

		EntityManager em = new JPAUtil().getEntityManagerFactory();
		em.getTransaction().begin();

		em.persist(t);

		em.getTransaction().commit();
		em.close();
	}

}

Hibernate

public class JPAUtil {

	private static EntityManagerFactory manager = Persistence
			.createEntityManagerFactory("erp2");

	public EntityManager getEntityManagerFactory() {
		return JPAUtil.manager.createEntityManager();
	}

}
@Entity
public class Empresa {

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	private String idEmpresa;

	private String razaoSocial;
	private String cnpj;
	private String inscrEstad;

	public String getIdEmpresa() {
		return idEmpresa;
	}

	public void setIdEmpresa(String idEmpresa) {
		this.idEmpresa = idEmpresa;
	}

	public String getRazaoSocial() {
		return razaoSocial;
	}

	public void setRazaoSocial(String razaoSocial) {
		this.razaoSocial = razaoSocial;
	}

	public String getCnpj() {
		return cnpj;
	}

	public void setCnpj(String cnpj) {
		this.cnpj = cnpj;
	}

	public String getInscrEstad() {
		return inscrEstad;
	}

	public void setInscrEstad(String inscrEstad) {
		this.inscrEstad = inscrEstad;
	}

Arquivo Persisitence

!-- Aqui são listadas todas as entidades -->
		<class>br.com.erp2.mgcad.Empresa</class>		

		<properties>

			<!-- Propriedades JDBC -->
			<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver" />
			<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost/erp2" />
			<property name="javax.persistence.jdbc.user" value="root" />
			<property name="javax.persistence.jdbc.password" value="121609" />

			<!-- Configurações específicas do Hibernate -->
			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
			<property name="hibernate.hbm2ddl.auto" value="update" />
			<property name="hibernate.show_sql" value="true" />
			<property name="hibernate.format_sql" value="true" />
		</properties>

Console

Abr 06, 2015 3:25:52 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
WARN: SQL Error: 1146, SQLState: 42S02
Abr 06, 2015 3:25:52 PM org.hibernate.engine.jdbc.spi.SqlExceptionHelper logExceptions
ERROR: Table 'erp2.empresa' doesn't exist
Abr 06, 2015 3:25:52 PM com.sun.faces.lifecycle.InvokeApplicationPhase execute
ADVERTÊNCIA: #{empresaBean.gravar}: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute statement
javax.faces.FacesException: #{empresaBean.gravar}: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not execute statement
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:117)

Srs, eu achei o erro. Estava na linha

private String idEmpresa;

O correto é

private Integer idEmpresa;

Essa é á chave primaria eu penso que ela não deve ser do tipo String.

Abraço.