/* * EditHemograma.java * * Proyecto Fin de Carrera 2002/2003 * GESTION DE INFORMES DE ALTA CON TECNOLOGIA JAVA * Y BASE DE DATOS XML NATIVAS */ package InformeAlta; import java.io.*; import java.net.*; import javax.servlet.*; import javax.servlet.http.*; import org.xmldb.api.base.*; import org.xmldb.api.modules.*; import org.xmldb.api.DatabaseManager; import org.w3c.dom.*; /** * @author Irene Lavado Gomez */ /** * Definimos la clase EditHemograma, esta clase sera la encargada * de recuperar los datos del documento XML almacenado y mandarlos a * la página JSP correspondiente al formulario "Hemograma", * todo ello mediante Dom */ public class EditHemograma extends Action { public boolean editHem(HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException { Collection col= null; try{ // Consigue una instancia collection col = getCollection(request,response); // Recupera el dockey del paciente que estamos rellenando String dockey = request.getParameter("DOCKEY"); // Recuperar un documento de una coleccion: XMLResource resource =(XMLResource) col.getResource(dockey); // Convierte a objeto Dom Document doc = (Document) resource.getContentAsDOM(); // Leo los datos del documento y los almacena en strings para // después enviarlos a la página JSP, para ello usamos las // funciones definidas en la clase BuscaNodos BuscaNodos busca = new BuscaNodos(); String Fecha = busca.getDato1(doc,"FechaTest",1); String Hematies = busca.getDato1(doc,"ValorCantidad",5); String Hemoglobina = busca.getDato1(doc,"ValorCantidad",6); String Hematocrito = busca.getDato1(doc,"ValorCantidad",7); String VCM = busca.getDato1(doc,"ValorCantidad",8); String HCM = busca.getDato1(doc,"ValorCantidad",9); String CHCM = busca.getDato1(doc,"ValorCantidad",10); String RDW = busca.getDato1(doc,"ValorCantidad",11); String Leucocitos = busca.getDato1(doc,"ValorCantidad",12); String Segmentados = busca.getDato1(doc,"ValorCantidad",13); String Linfocitos = busca.getDato1(doc,"ValorCantidad",14); String Monocitos = busca.getDato1(doc,"ValorCantidad",15); String Eosinofilos = busca.getDato1(doc,"ValorCantidad",16); String Basofilos = busca.getDato1(doc,"ValorCantidad",17); String Plaquetas = busca.getDato1(doc,"ValorCantidad",18); // En el caso de la etiqueta comentario, tenemos que tener // en cuenta, que depende del número de procedimientos que se // hayan introducido, por lo que tenemos que hayar dicho numero NodeList listaproc = doc.getElementsByTagName("Procedimiento"); int numproc = listaproc.getLength(); String Observ = busca.getDato1(doc,"Comentario",numproc+1); request.setAttribute("Fecha",Fecha); request.setAttribute("Hematies",Hematies); request.setAttribute("Hemoglobina",Hemoglobina); request.setAttribute("Hematocrito",Hematocrito); request.setAttribute("VCM",VCM); request.setAttribute("HCM",HCM); request.setAttribute("CHCM",CHCM); request.setAttribute("RDW",RDW); request.setAttribute("Leucocitos",Leucocitos); request.setAttribute("Segmentados",Segmentados); request.setAttribute("Linfocitos",Linfocitos); request.setAttribute("Monocitos",Monocitos); request.setAttribute("Eosinofilos",Eosinofilos); request.setAttribute("Basofilos",Basofilos); request.setAttribute("Plaquetas",Plaquetas); request.setAttribute("ObservHemo",Observ); // Almacenar el documento resource.setContentAsDOM(doc); col.storeResource(resource); } catch (IOException e) { System.out.println(e); } catch ( Exception e) { e.printStackTrace(); // Si la respuesta es committed no hay mucho más que se pueda hacer if (response.isCommitted()) return true; // Toma la excepción y envia al usuario a la página de error if (e.getMessage() != null ) { response.sendRedirect("/Addressbook/error.jsp?error=" + URLEncoder.encode(e.getMessage()) ); } else { response.sendRedirect("/Addressbook/error.jsp" ); } } return true; } } e-REdING. Biblioteca de la Escuela Superior de Ingenieros de Sevilla.


GESTIÓN DE INFORMES DE ALTA CON TECNOLOGÃA JAVA Y BASE DE DATOS XML NATIVAS

: Lavado Gómez, Irene
: Ingeniería Telecomunicación
Contenido del proyecto: