Hibernate + Struts2: Por que não funciona?
Boa tarde a todos. Estou terminando um projeto Java e decidi utilizar Hibernate e Struts2. Pescando e compilando trechos de código de diversos fóruns e tutoriais, cheguei ao código a seguir mas, perdido em minha ignorância, não sei porque não funciona. Será que alguém pode me ajudar?
Modelo:
Interface DAO:
Implementação do DAO:
Classe Action Struts:
Arquivo XML Hibernate:
Arquivo XML Struts:
JSP para Cadastro de Militares:
JSP para Lista de Militares:
Estrutura das classes:
[img:descricao=Estrutura das classes]http://arquivo.devmedia.com.br/forum/imagem/439279-20151002-165135.png[/img]
Web Content:
[img:descricao=WebContent]http://arquivo.devmedia.com.br/forum/imagem/439279-20151002-165202.png[/img]
Quando executo, o Hibernate informa que a transação foi executada, mas quando verifico no banco, não há alteração alguma. Segue extrato do console:
O que pode estar errado? Já estou há dias lendo e relendo o código e não consigo enxergar nada errado e, pelo fato de não aparecer qualquer erro nos logs, estou sem rumo para correção. Aguardo ansiosamente a ajuda de uma mente mais esclarecida!
Modelo:
package br.com.sispro.model;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity
public class Militar {
@Id @GeneratedValue(strategy=GenerationType.IDENTITY)
private long id;
private long idt;
private String cpf;
private String nome;
private String nomeGuerra;
public long getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public long getIdt() {
return idt;
}
public void setIdt(long idt) {
this.idt = idt;
}
public String getCpf() {
return cpf;
}
public void setCpf(String cpf) {
this.cpf = cpf;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getNomeGuerra() {
return nomeGuerra;
}
public void setNomeGuerra(String nomeGuerra) {
this.nomeGuerra = nomeGuerra;
}
}
Interface DAO:
package br.com.sispro.dao;
import java.util.List;
import br.com.sispro.model.Militar;
public interface MilitarDAO {
public void cadastrar(Militar militar);
public Militar getMilitar(long id);
public List<Militar> listar();
public void remover(Militar militar);
public void editar(Militar militar);
}
Implementação do DAO:
package br.com.sispro.dao;
import java.util.List;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import br.com.sispro.model.Militar;
@SuppressWarnings("deprecation")
public class MilitarDAOImp implements MilitarDAO {
private static final ThreadLocal<Session> session = new ThreadLocal<Session>();
private static final SessionFactory sessions = new AnnotationConfiguration().configure().buildSessionFactory();
public static Session getSession() {
Session session = (Session) MilitarDAOImp.session.get();
if (session == null) {
session = sessions.openSession();
MilitarDAOImp.session.set(session);
}
return session;
}
protected void begin() {
getSession().beginTransaction();
}
protected void commit() {
getSession().beginTransaction().commit();
}
protected void rollback() {
try {
getSession().getTransaction().rollback();
} catch( HibernateException e ) {
System.out.println("Não foi possível fazer rollback da transação");
}
try {
getSession().close();
} catch( HibernateException e ) {
System.out.println("Não foi possível fazer fechar a sessão");
}
MilitarDAOImp.session.set(null);
}
protected void close() {
getSession().close();
MilitarDAOImp.session.set(null);
}
@Override
public void cadastrar(Militar militar) {
try {
begin();
getSession().save(militar);
commit();
} catch (Exception exp) {
rollback();
} finally {
close();
}
}
@Override
public Militar getMilitar(long id) {
return (Militar) getSession().load(Militar.class, id);
}
@SuppressWarnings("unchecked")
@Override
public List<Militar> listar() {
List<Militar> lista = getSession().createQuery("from Militar").list();
commit();
close();
return lista;
}
@Override
public void remover(Militar militar) {
getSession().delete(militar);
commit();
close();
}
@Override
public void editar(Militar militar) {
getSession().update(militar);
commit();
close();
}
}
Classe Action Struts:
package br.com.sispro.action;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts2.ServletActionContext;
import br.com.sispro.dao.MilitarDAO;
import br.com.sispro.dao.MilitarDAOImp;
import br.com.sispro.model.Militar;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
public class MilitarAction extends ActionSupport implements ModelDriven<Militar> {
private static final long serialVersionUID = -1165253855652078642L;
private Militar militar = new Militar();
private List<Militar> lista = new ArrayList<Militar>();
private MilitarDAO militarDAO = new MilitarDAOImp();
@Override
public Militar getModel() {
return militar;
}
public Militar getMilitar() {
return militar;
}
public void setMilitar(Militar militar) {
this.militar = militar;
}
public List<Militar> getLista() {
return lista;
}
public void setLista(List<Militar> lista) {
this.lista = lista;
}
public String cadastrar() {
militarDAO.cadastrar(militar);
return SUCCESS;
}
public String listar() {
lista = militarDAO.listar();
return SUCCESS;
}
public String editar() {
HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get( ServletActionContext.HTTP_REQUEST);
militar = militarDAO.getMilitar(Long.parseLong( request.getParameter("id")));
militarDAO.editar(militar);
return SUCCESS;
}
public String excluir() {
HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get( ServletActionContext.HTTP_REQUEST);
militar = militarDAO.getMilitar(Long.parseLong( request.getParameter("id")));
militarDAO.remover(militar);
return SUCCESS;
}
}
Arquivo XML Hibernate:
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-configuration SYSTEM "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql://localhost/sispro</property> <property name="hibernate.connection.username">root</property> <property name="connection.password"></property> <property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property> <property name="hibernate.hbm2ddl.auto">update</property> <property name="show_sql">true</property> <property name="hibernate.format_sql">true</property> <mapping class="br.com.sispro.model.Militar"/> <mapping class="br.com.sispro.model.Produtividade"/> <mapping class="br.com.sispro.model.Criterio"/> <mapping class="br.com.sispro.model.OPM"/> <mapping class="br.com.sispro.model.PostoGrad"/> </session-factory> </hibernate-configuration>
Arquivo XML Struts:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <constant name="struts.devMode" value="true" /> <package name="default" namespace="/" extends="struts-default"> <action name="cadastrar" method="cadastrar" class="br.com.sispro.action.MilitarAction"> <result name="success">success.jsp</result> <result name="input">militar-cadastro.jsp</result> </action> <action name="listar" method="listar" class="br.com.sispro.action.MilitarAction"> <result name="success">militar-lista.jsp</result> </action> <action name="editar" method="editar" class="br.com.sispro.action.MilitarAction"> <result name="success">militar-edicao.jsp</result> </action> <action name="excluir" method="excluir" class="br.com.sispro.action.MilitarAction"> <result name="success">militar-lista.jsp</result> </action> </package> </struts>
JSP para Cadastro de Militares:
<%@page import="br.com.sispro.model.OPM"%> <%@page import="br.com.sispro.dao.OPMDAO"%> <%@page import="br.com.sispro.dao.OPMDAOImp"%> <%@page import="java.util.ArrayList"%> <%@page import="br.com.sispro.model.PostoGrad"%> <%@ include file="cabecalho.jsp" %> <%@ taglib prefix="s" uri="/struts-tags" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <h1>Cadastro de Militares</h1> <form action="cadastrar" method="post"> <table class="table"> <tr> <td>Nome:</td> <td><input class="form-control" type="text" name="militar.nome"><br></td> </tr> <tr> <td>Nome de Guerra:</td> <td><input class="form-control" type="text" name="militar.nomeGuerra"><br></td> </tr> <tr> <td>Identidade Militar:</td> <td><input class="form-control" type="number" name="militar.idt"><br></td> </tr> <tr> <td>CPF:</td> <td><input class="form-control" type="number" name="militar.cpf"><br></td> </tr> <tr> <td><input class="btn btn-primary" type="submit" value="Enviar"></td> </tr> </table> </form> <%@ include file="rodape.jsp" %>
JSP para Lista de Militares:
<%@ include file="cabecalho.jsp" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<table class="table">
<thead>
<tr style="text-align: center;">
<th><div class="text-center">NOME</div></th>
<th><div class="text-center">NOME DE GUERRA</div></th>
<th><div class="text-center">IDT</div></th>
<th><div class="text-center">CPF</div></th>
<th colspan="2"><div class="text-center">AÇÕES</div></th>
</tr>
</thead>
<tbody>
<c:forEach items="${ lista }" var="militar">
<tr>
<td>${militar.nome}</td>
<td>${militar.nomeGuerra}</td>
<td>${militar.idt}</td>
<td>${militar.cpf}</td>
<td>
<s:url id="editURL" action="editar">
<s:param name="id" value="%{militar.id}"></s:param>
</s:url>
<s:a href="%">
<img alt="Editar" src="/TCCSispro/images/editartrnsp.png">
</s:a>
</td>
<td>
<s:url id="deleteURL" action="excluir">
<s:param name="id" value="%{militar.id}"></s:param>
</s:url>
<s:a href="%">
<img alt="Excluir" src="/TCCSispro/images/excluirtrnsp.png">
</s:a>
</td>
</tr>
</c:forEach>
</tbody>
</table>
<%@ include file="rodape.jsp" %>
Estrutura das classes:
[img:descricao=Estrutura das classes]http://arquivo.devmedia.com.br/forum/imagem/439279-20151002-165135.png[/img]
Web Content:
[img:descricao=WebContent]http://arquivo.devmedia.com.br/forum/imagem/439279-20151002-165202.png[/img]
Quando executo, o Hibernate informa que a transação foi executada, mas quando verifico no banco, não há alteração alguma. Segue extrato do console:
out 02, 2015 3:55:59 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
ADVERTÊNCIA: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:TCCSispro' did not find a matching property.
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Server version: Apache Tomcat/8.0.23
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Server built: May 19 2015 14:58:38 UTC
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Server number: 8.0.23.0
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: OS Name: Windows 7
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: OS Version: 6.1
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Architecture: x86
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Java Home: C:\Program Files\Java\jre1.8.0_25
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: JVM Version: 1.8.0_25-b18
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: JVM Vendor: Oracle Corporation
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: CATALINA_BASE: C:\Users\Lenovo\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: CATALINA_HOME: C:\Program Files\Apache Software Foundation\apache-tomcat-8.0.23
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dcatalina.base=C:\Users\Lenovo\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dcatalina.home=C:\Program Files\Apache Software Foundation\apache-tomcat-8.0.23
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dwtp.deploy=C:\Users\Lenovo\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Djava.endorsed.dirs=C:\Program Files\Apache Software Foundation\apache-tomcat-8.0.23\endorsed
out 02, 2015 3:55:59 PM org.apache.catalina.startup.VersionLoggerListener log
INFORMAÇÕES: Command line argument: -Dfile.encoding=Cp1252
out 02, 2015 3:55:59 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFORMAÇÕES: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre1.8.0_25\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre1.8.0_25/bin/client;C:/Program Files/Java/jre1.8.0_25/bin;C:/Program Files/Java/jre1.8.0_25/lib/i386;C:\ProgramData\Oracle\Java\javapath;C:\Program Files\Broadcom\Broadcom 802.11 Network Adapter\Driver;;;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\OpenCL SDK\2.0\bin\x86;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\Lenovo\Bluetooth Software\;C:\Program Files\Java\jdk1.8.0_20\bin\;C:\Program Files\Attachmate\E!E2K\;C:\xampp\php\;C:\Program Files\eclipse;;.
out 02, 2015 3:55:59 PM org.apache.coyote.AbstractProtocol init
INFORMAÇÕES: Initializing ProtocolHandler ["http-nio-8080"]
out 02, 2015 3:56:00 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFORMAÇÕES: Using a shared selector for servlet write/read
out 02, 2015 3:56:00 PM org.apache.coyote.AbstractProtocol init
INFORMAÇÕES: Initializing ProtocolHandler ["ajp-nio-8009"]
out 02, 2015 3:56:00 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFORMAÇÕES: Using a shared selector for servlet write/read
out 02, 2015 3:56:00 PM org.apache.catalina.startup.Catalina load
INFORMAÇÕES: Initialization processed in 708 ms
out 02, 2015 3:56:00 PM org.apache.catalina.core.StandardService startInternal
INFORMAÇÕES: Starting service Catalina
out 02, 2015 3:56:00 PM org.apache.catalina.core.StandardEngine startInternal
INFORMAÇÕES: Starting Servlet Engine: Apache Tomcat/8.0.23
out 02, 2015 3:56:01 PM org.apache.jasper.servlet.TldScanner scanJars
INFORMAÇÕES: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
out 02, 2015 3:56:01 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Parsing configuration file [struts-default.xml]
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Parsing configuration file [struts-plugin.xml]
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Parsing configuration file [struts.xml]
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.ObjectFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ActionFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ResultFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ConverterFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.factory.InterceptorFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.factory.ValidatorFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.factory.UnknownHandlerFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.FileManagerFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.XWorkConverter)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.CollectionConverter)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.ArrayConverter)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.DateConverter)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.NumberConverter)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.impl.StringConverter)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ConversionPropertiesProcessor)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ConversionFileProcessor)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ConversionAnnotationProcessor)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.TypeConverterCreator)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.TypeConverterHolder)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.TextProvider)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.LocaleProvider)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.ActionProxyFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.conversion.ObjectTypeDeterminer)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (org.apache.struts2.dispatcher.mapper.ActionMapper)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (jakarta) for (org.apache.struts2.dispatcher.multipart.MultiPartRequest)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (org.apache.struts2.views.freemarker.FreemarkerManager)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (org.apache.struts2.components.UrlRenderer)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.validator.ActionValidatorManager)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.util.ValueStackFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.util.reflection.ReflectionProvider)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.util.reflection.ReflectionContextFactory)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.util.PatternMatcher)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (org.apache.struts2.util.ContentTypeMatcher)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (org.apache.struts2.dispatcher.StaticContentLoader)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.UnknownHandlerManager)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (org.apache.struts2.views.util.UrlHelper)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.util.TextParser)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (org.apache.struts2.dispatcher.DispatcherErrorHandler)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.security.ExcludedPatternsChecker)
out 02, 2015 3:56:02 PM com.opensymphony.xwork2.util.logging.jdk.JdkLogger info
INFORMAÇÕES: Choosing bean (struts) for (com.opensymphony.xwork2.security.AcceptedPatternsChecker)
out 02, 2015 3:56:02 PM org.apache.coyote.AbstractProtocol start
INFORMAÇÕES: Starting ProtocolHandler ["http-nio-8080"]
out 02, 2015 3:56:02 PM org.apache.coyote.AbstractProtocol start
INFORMAÇÕES: Starting ProtocolHandler ["ajp-nio-8009"]
out 02, 2015 3:56:02 PM org.apache.catalina.startup.Catalina start
INFORMAÇÕES: Server startup in 2620 ms
out 02, 2015 3:56:16 PM org.hibernate.annotations.common.Version <clinit>
INFO: HCANN000001: Hibernate Commons Annotations {4.0.1.Final}
out 02, 2015 3:56:16 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.2.0.Final}
out 02, 2015 3:56:16 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
out 02, 2015 3:56:16 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
out 02, 2015 3:56:16 PM org.hibernate.cfg.Configuration configure
INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml
out 02, 2015 3:56:16 PM org.hibernate.cfg.Configuration getConfigurationInputStream
INFO: HHH000040: Configuration resource: /hibernate.cfg.xml
out 02, 2015 3:56:16 PM org.hibernate.internal.util.xml.DTDEntityResolver resolveEntity
WARN: HHH000223: Recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide!
out 02, 2015 3:56:16 PM org.hibernate.cfg.Configuration doConfigure
INFO: HHH000041: Configured SessionFactory: null
out 02, 2015 3:56:16 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000402: Using Hibernate built-in connection pool (not for production use!)
out 02, 2015 3:56:16 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000115: Hibernate connection pool size: 20
out 02, 2015 3:56:16 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000006: Autocommit mode: false
out 02, 2015 3:56:16 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000401: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost/sispro]
out 02, 2015 3:56:16 PM org.hibernate.service.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000046: Connection properties: {user=root, password=****}
out 02, 2015 3:56:17 PM org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL5InnoDBDialect
out 02, 2015 3:56:17 PM org.hibernate.engine.transaction.internal.TransactionFactoryInitiator initiateService
INFO: HHH000399: Using default transaction strategy (direct JDBC transactions)
out 02, 2015 3:56:17 PM org.hibernate.hql.internal.ast.ASTQueryTranslatorFactory <init>
INFO: HHH000397: Using ASTQueryTranslatorFactory
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000228: Running hbm2ddl schema update
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000102: Fetching database metadata
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000396: Updating schema
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: sispro.criterio
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [pontuacao, criterio, id]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: []
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [primary]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: sispro.militar
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [nomeguerra, cpf, idt, nome, id]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: []
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [primary]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: sispro.opm
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [nome, id]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: []
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [primary]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000261: Table found: sispro.produtividade
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000037: Columns: [data, criterio_id, opm_id, id, militar_id]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000108: Foreign keys: [fk48f727841aade1c2, fk48f72784afee09c2, fk48f7278486636812]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.TableMetadata <init>
INFO: HHH000126: Indexes: [fk48f727841aade1c2, fk48f72784afee09c2, fk48f7278486636812, primary]
out 02, 2015 3:56:17 PM org.hibernate.tool.hbm2ddl.SchemaUpdate execute
INFO: HHH000232: Schema update complete
Hibernate:
insert
into
Militar
(cpf, idt, nome, nomeGuerra)
values
(?, ?, ?, ?)
O que pode estar errado? Já estou há dias lendo e relendo o código e não consigo enxergar nada errado e, pelo fato de não aparecer qualquer erro nos logs, estou sem rumo para correção. Aguardo ansiosamente a ajuda de uma mente mais esclarecida!
Daniel Melo
Curtidas 0