/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.ufcspa.simdecs.comunicacao;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.NoResultException;
import javax.persistence.Persistence;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.ufcspa.simdecs.entidade.Log;
import org.ufcspa.simdecs.entidade.RespostaMediador;
import org.ufcspa.simdecs.entidade.Usuario;
import org.ufcspa.simdecs.comunicacao.util.UtilitarioSql;
/**
*
* @author pbarros
*/
public class MetodoParaGravarLog extends HttpServlet {
/**
* Processes requests for both HTTP
* GET
and
* POST
methods.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, ParseException {
HttpSession session = request.getSession(true);
session.getId();
Date dt = new Date();
Long idLong = new Long(request.getParameter("id"));
UtilitarioSql util = new UtilitarioSql();
PrintWriter out = response.getWriter();
// alteracao solicitado mosmmann
//response.setContentType("text/html;charset=UTF-8");
response.setContentType( "text/xml" );
response.setHeader( "Cache-Control", "no-cache" );
out.println( "" );
EntityManagerFactory emf = Persistence.createEntityManagerFactory("simdecsPU");
EntityManager em = emf.createEntityManager();
em.getTransaction().begin();
Log lg =new Log();
lg.setDatalog(util.converteDataUtilToSql(dt));
lg.setDescricaolog(request.getParameter("log"));
lg.setHoralog(dt);
lg.setUsuid(idLong);
em.persist(lg);
em.getTransaction().commit();
RespostaMediador resp;
try {
em.getTransaction().begin();
resp = (RespostaMediador) em.createQuery("select resposta from RespostaMediador as resposta where resposta.idUsuario=:id and resposta.dataResposta is null" )
.setParameter("id", idLong)
//.setParameter("data",dtNull )
.getSingleResult();
if(resp.getId()>0)
{
out.println( "" + String.valueOf(resp.getId()) + "" );
out.println("" + resp.getNome() + "");
out.println("" + resp.getEndArquivo() + "");
resp.setDataResposta(util.converteDataUtilToSql(dt));
}
else
{
out.println( "0" );
out.println("");
out.println("");
}
// out.println("OK "+ user.getId());
// out.close();
} catch (NoResultException ne) {
// request.setAttribute("id","0");
// out.println("Usuario ou senha Inválido ");
out.println( "" + "0" + "" );
} finally {
em.persist(lg);
em.getTransaction().commit();
out.println( "" );
out.close();
}
}
//
/**
* Handles the HTTP
* GET
method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
/**
* Handles the HTTP
* POST
method.
*
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
processRequest(request, response);
} catch (ParseException ex) {
Logger.getLogger(MetodoParaGravarLog.class.getName()).log(Level.SEVERE, null, ex);
}
}
/**
* Returns a short description of the servlet.
*
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}//
}