Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.saludtec.web; import com.saludtec.entidades.TiposVinculacion; import com.saludtec.jpa.TiposVinculacionEjb; import com.saludtec.jpa.exceptions.NonexistentEntityException; import java.io.IOException; import java.io.PrintWriter; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; import javax.ejb.EJB; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.json.simple.JSONArray; import org.json.simple.JSONObject; /** * * @author saintec */ @WebServlet(name = "TipoVinculacionWeb", urlPatterns = { "/tiposVinculacion/*" }) public class TiposVinculacionWeb extends HttpServlet { @EJB TiposVinculacionEjb ejb; JSONObject obj; JSONArray objArray; protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); try (PrintWriter out = response.getWriter()) { String servicio = request.getRequestURI().replace("/Adminio/tiposVinculacion/", ""); switch (servicio) { case "getlink": traerVinculacion(request).writeJSONString(out); break; case "listlinks": listarVinculacion().writeJSONString(out); break; case "savelink": guardarVinculacion(request).writeJSONString(out); break; case "updatelink": editarVinculacion(request).writeJSONString(out); break; case "deletelink": eliminarVinculacion(request).writeJSONString(out); break; default: obj = new JSONObject(); obj.put("error", "404 - El servicio " + servicio + " no existe"); obj.writeJSONString(out); break; } } catch (NonexistentEntityException ex) { Logger.getLogger(TiposVinculacionWeb.class.getName()).log(Level.SEVERE, null, ex); } } private JSONObject traerVinculacion(HttpServletRequest request) throws NonexistentEntityException { TiposVinculacion tipoVinculacion = ejb .traerTiposVinculacion(Integer.parseInt(request.getParameter("idTipoVinculacion"))); obj = new JSONObject(); obj.put("idTipoVinculacion", tipoVinculacion.getIdTipoVinculacion()); obj.put("tipoVinculacion", tipoVinculacion.getTipoVinculacion()); return obj; } private JSONArray listarVinculacion() throws NonexistentEntityException { List<TiposVinculacion> tiposVinculacion = ejb.traerTiposVinculacion(); objArray = new JSONArray(); for (TiposVinculacion tipoVinculacion : tiposVinculacion) { obj = new JSONObject(); obj.put("idTipoVinculacion", tipoVinculacion.getIdTipoVinculacion()); obj.put("tipoVinculacion", tipoVinculacion.getTipoVinculacion()); objArray.add(obj); } return objArray; } private JSONObject guardarVinculacion(HttpServletRequest request) throws NonexistentEntityException { TiposVinculacion tipoVinculacion = new TiposVinculacion(); tipoVinculacion.setTipoVinculacion(request.getParameter("tipoVinculacion")); tipoVinculacion = ejb.crear(tipoVinculacion); obj = new JSONObject(); obj.put("idTipoDocumento", tipoVinculacion.getIdTipoVinculacion()); obj.put("tipoVinculacion", tipoVinculacion.getTipoVinculacion()); return obj; } private JSONObject editarVinculacion(HttpServletRequest request) throws NonexistentEntityException { TiposVinculacion tipoVinculacion = new TiposVinculacion(); tipoVinculacion.setIdTipoVinculacion(Integer.parseInt(request.getParameter("idTipoVinculacion"))); tipoVinculacion.setTipoVinculacion(request.getParameter("tipoVinculacion")); ejb.editar(tipoVinculacion); obj = new JSONObject(); obj.put("mensaje", "ok"); return obj; } private JSONObject eliminarVinculacion(HttpServletRequest request) throws NonexistentEntityException { ejb.eliminar(Integer.parseInt(request.getParameter("idTipoVinculacion"))); obj = new JSONObject(); obj.put("menasaje", "eliminado"); return obj; } // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code."> /** * Handles the HTTP <code>GET</code> 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 <code>POST</code> 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"; }// </editor-fold> }