/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package org.ufcspa.simdecs.comunicacao; import java.io.BufferedInputStream; import java.io.IOException; import java.io.PrintWriter; import java.net.MalformedURLException; import java.net.URL; import java.net.URLConnection; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.ufcspa.simdecs.entidade.ArquivoCaso; /** * * @author pbarros */ public class MetodoSelecionaCaso 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 { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); //String file ; EntityManagerFactory emf = Persistence.createEntityManagerFactory("simdecsPU"); EntityManager em = emf.createEntityManager(); URL url = null; URLConnection urlConn = null; BufferedInputStream buf = null; ArquivoCaso arquivo; Integer idCaso = Integer.valueOf(request.getParameter("idArquivoCaso")); // out.print(request.getParameter("idArquivoCaso")); try { arquivo = (ArquivoCaso) em.createQuery("select arq from ArquivoCaso as arq where arq.id ="+idCaso) //.setParameter("idC",idCaso) .getSingleResult(); // out.println(arquivo.getEndArquivo()); url = getServletContext().getResource(arquivo.getEndArquivo()); //set response header response.setContentType("text/xml"); urlConn = url.openConnection(); //establish connection with URL presenting web.xml urlConn.connect(); buf = new BufferedInputStream(urlConn.getInputStream()); int readBytes = 0; while ((readBytes = buf.read()) != -1) out.write(readBytes); } catch (MalformedURLException mue) { throw new ServletException(mue.getMessage()); } catch (IOException ioe) { throw new ServletException(ioe.getMessage()); } finally { out.close(); buf.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 */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * 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 { processRequest(request, response); } /** * Returns a short description of the servlet. * * @return a String containing servlet description */ @Override public String getServletInfo() { return "Short description"; }// }