Example usage for javax.servlet.http HttpSession removeAttribute

List of usage examples for javax.servlet.http HttpSession removeAttribute

Introduction

In this page you can find the example usage for javax.servlet.http HttpSession removeAttribute.

Prototype

public void removeAttribute(String name);

Source Link

Document

Removes the object bound with the specified name from this session.

Usage

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/elSolicitante2", method = RequestMethod.GET)
public ModelAndView elSolicitante2_GET(ModelMap map, HttpSession session) {
    String volver = "";
    String expediente2 = "";
    String estado2 = "";
    String HT = "";
    String nacionalidad = "";
    String tipofamilia = "";
    if (session.getAttribute("volver") != null) {
        volver = session.getAttribute("volver").toString();
    }//  w w  w.ja va 2 s.  co  m
    if (session.getAttribute("expediente2") != null) {
        expediente2 = session.getAttribute("expediente2").toString();
    }
    if (session.getAttribute("estado2") != null) {
        estado2 = session.getAttribute("estado2").toString();
    }
    if (session.getAttribute("HT") != null) {
        HT = session.getAttribute("HT").toString();
    }
    if (session.getAttribute("nacionalidad") != null) {
        nacionalidad = session.getAttribute("nacionalidad").toString();
    }
    if (session.getAttribute("tipofamilia") != null) {
        tipofamilia = session.getAttribute("tipofamilia").toString();
    }
    session.removeAttribute("expediente2");
    session.removeAttribute("estado2");
    session.removeAttribute("HT");
    session.removeAttribute("nacionalidad");
    session.removeAttribute("tipofamilia");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }

    //ArrayList<Familia> allFamilias = new ArrayList();
    //allFamilias = servicioEtapa.getListaFamilias();
    map.put("df", df);
    map.put("infoFam", session.getAttribute("infoFam_sesion"));
    map.put("estado", session.getAttribute("etapaOrigen_sesion"));
    map.put("expediente", session.getAttribute("expediente_sesion"));
    map.put("El", session.getAttribute("el_sesion"));
    map.addAttribute("volver", volver);

    map.put("expediente2", expediente2);
    map.put("HT", HT);
    map.put("nacionalidad", nacionalidad);
    map.put("tipofamilia", tipofamilia);
    map.put("estado2", estado2);
    return new ModelAndView("/Personal/Buscador/familia/info_el", map);
}

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/laSolicitante2", method = RequestMethod.GET)
public ModelAndView laSolicitante2_GET(ModelMap map, HttpSession session) {
    String volver = "";
    String expediente2 = "";
    String HT = "";
    String nacionalidad = "";
    String tipofamilia = "";
    String estado2 = "";
    if (session.getAttribute("volver") != null) {
        volver = session.getAttribute("volver").toString();
    }/*from   w ww .j a v  a2s.  com*/
    if (session.getAttribute("expediente2") != null) {
        expediente2 = session.getAttribute("expediente2").toString();
    }
    if (session.getAttribute("HT") != null) {
        HT = session.getAttribute("HT").toString();
    }
    if (session.getAttribute("nacionalidad") != null) {
        nacionalidad = session.getAttribute("nacionalidad").toString();
    }
    if (session.getAttribute("tipofamilia") != null) {
        tipofamilia = session.getAttribute("tipofamilia").toString();
    }
    if (session.getAttribute("estado2") != null) {
        estado2 = session.getAttribute("estado2").toString();
    }
    session.removeAttribute("expediente2");
    session.removeAttribute("HT");
    session.removeAttribute("nacionalidad");
    session.removeAttribute("tipofamilia");
    session.removeAttribute("estado2");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }

    //ArrayList<Familia> allFamilias = new ArrayList();
    //allFamilias = servicioEtapa.getListaFamilias();
    map.put("df", df);
    map.put("infoFam", session.getAttribute("infoFam_sesion"));
    map.put("estado", session.getAttribute("etapaOrigen_sesion"));
    map.put("expediente", session.getAttribute("expediente_sesion"));
    map.put("Ella", session.getAttribute("ella_sesion"));
    map.put("volver", volver);

    map.put("expediente2", expediente2);
    map.put("HT", HT);
    map.put("nacionalidad", nacionalidad);
    map.put("tipofamilia", tipofamilia);
    map.put("estado2", estado2);
    return new ModelAndView("/Personal/Buscador/familia/info_ella", map);
}

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/crearAtencion", method = RequestMethod.GET)
public ModelAndView crearAtencion_GET(ModelMap map, HttpSession session) {
    long personal = 0;
    String fecha = "";
    String hora = "";
    String tipo = "";
    String detalle = "";
    String obs = "";
    String volver = "";
    try {/*  w  w  w .java 2  s  .  com*/
        personal = Long.parseLong(session.getAttribute("personal").toString());
        fecha = session.getAttribute("fecha").toString();
        hora = session.getAttribute("hora").toString();
        tipo = session.getAttribute("tipo").toString();
        if (session.getAttribute("detalle") != null) {
            detalle = session.getAttribute("detalle").toString();
        }
        if (session.getAttribute("obs") != null) {
            obs = session.getAttribute("obs").toString();
        }
        if (session.getAttribute("volver") != null) {
            volver = session.getAttribute("volver").toString();
        }
    } catch (Exception ex) {
        return new ModelAndView("redirect:/inicioper", map);
    }
    session.removeAttribute("personal");
    session.removeAttribute("fecha");
    session.removeAttribute("hora");
    session.removeAttribute("tipo");
    session.removeAttribute("detalle");
    session.removeAttribute("obs");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }
    Atencion tempAtn = new Atencion();
    InfoFamilia tempInfoFam = new InfoFamilia();
    tempInfoFam = (InfoFamilia) session.getAttribute("infoFam_sesion");
    Familia tempFam = tempInfoFam.getFamilia();

    Personal tempPer = ServicioPersonal.getPersonal(personal);

    tempAtn.setFamilia(tempFam);
    tempAtn.setPersonal(tempPer);
    if (fecha != null && !fecha.equals("")) {
        tempAtn.setFecha(df.stringToDate(fecha));
    }
    if (fecha == null || fecha.equals("")) {
        tempAtn.setFecha(null);
    }
    tempAtn.setHora(hora);
    tempAtn.setTipoAtencion(tipo);
    tempAtn.setDetalle(detalle);
    tempAtn.setObservacion(obs);

    ServicioMain.crearAtencion(tempAtn);

    String mensaje_log = "El usuario, " + usuario.getUser() + " con ID: " + usuario.getIdpersonal()
            + ". Agreg una nueva " + "atencin perteneciente a la familia con ID: " + tempFam.getIdfamilia();
    String Tipo_registro = "Personal";

    try {
        String Numero_registro = String.valueOf(usuario.getIdpersonal());

        ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
    } catch (Exception ex) {
    }
    listaAtenciones.clear();
    listaAtenciones = ServicioMain.getListaAtencionesPorFamilia(tempInfoFam.getFamilia().getIdfamilia());
    //
    session.setAttribute("listaAtenciones_sesion", listaAtenciones);
    //
    map.put("df", df);
    map.put("estado", session.getAttribute("etapaOrigen_sesion"));
    map.put("listaAtenciones", session.getAttribute("listaAtenciones_sesion"));
    map.put("expediente", session.getAttribute("expediente_sesion"));
    map.addAttribute("volver", volver);
    return new ModelAndView("/Personal/familia/info_atencion", map);
}

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/updateAtencion", method = RequestMethod.GET)
public ModelAndView updateAtencion_GET(ModelMap map, HttpSession session) {
    long idAtencion = 0;
    long personal = 0;
    String fecha = "";
    String hora = "";
    String tipo = "";
    String detalle = "";
    String obs = "";
    String volver = "";
    try {/*from ww  w.  ja  v  a  2s .c om*/
        idAtencion = Long.parseLong(session.getAttribute("idAtencion").toString());
        personal = Long.parseLong(session.getAttribute("personal").toString());
        fecha = (String) session.getAttribute("fecha");
        hora = (String) session.getAttribute("hora");
        tipo = (String) session.getAttribute("tipo");
        if (session.getAttribute("detalle") != null) {
            detalle = (String) session.getAttribute("detalle");
        }
        if (session.getAttribute("obs") != null) {
            obs = (String) session.getAttribute("obs");
        }
        if (session.getAttribute("volver") != null) {
            volver = (String) session.getAttribute("volver");
        }
    } catch (Exception ex) {
        return new ModelAndView("redirect:/inicioper", map);
    }
    session.removeAttribute("idAtencion");
    session.removeAttribute("personal");
    session.removeAttribute("fecha");
    session.removeAttribute("hora");
    session.removeAttribute("tipo");
    session.removeAttribute("detalle");
    session.removeAttribute("obs");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }
    Atencion tempAtn = ServicioMain.getAtencion(idAtencion);
    Personal tempPer = ServicioPersonal.getPersonal(personal);
    tempAtn.setPersonal(tempPer);
    if (fecha != null && !fecha.equals("")) {
        tempAtn.setFecha(df.stringToDate(fecha));
    }
    if (fecha == null || fecha.equals("")) {
        tempAtn.setFecha(null);
    }
    tempAtn.setHora(hora);
    tempAtn.setTipoAtencion(tipo);
    tempAtn.setDetalle(detalle);
    tempAtn.setObservacion(obs);

    ServicioMain.updateAtencion(tempAtn);

    String mensaje_log = "El usuario, " + usuario.getUser() + " con ID: " + usuario.getIdpersonal()
            + ". Edit la " + "atencin con ID: " + idAtencion;
    String Tipo_registro = "Personal";

    try {
        String Numero_registro = String.valueOf(usuario.getIdpersonal());

        ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
    } catch (Exception ex) {
    }
    //
    InfoFamilia tempInfoFam = new InfoFamilia();
    tempInfoFam = (InfoFamilia) session.getAttribute("infoFam_sesion");
    //
    listaAtenciones.clear();
    listaAtenciones = ServicioMain.getListaAtencionesPorFamilia(tempInfoFam.getFamilia().getIdfamilia());
    //
    session.setAttribute("listaAtenciones_sesion", listaAtenciones);
    //
    map.put("df", df);
    map.put("estado", session.getAttribute("etapaOrigen_sesion"));
    map.put("listaAtenciones", session.getAttribute("listaAtenciones_sesion"));
    map.put("expediente", session.getAttribute("expediente_sesion"));
    map.put("volver", volver);
    return new ModelAndView("/Personal/familia/info_atencion", map);
}

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/MainInsertarEstudio", method = RequestMethod.GET)
public ModelAndView MainInsertarEstudio_GET(ModelMap map, HttpSession session) {
    String orden = null;/*www  .j a v  a2 s .  c  o  m*/
    String agregar = null;
    String eliminar = null;
    String registrar = null;
    Long[] delete = null;
    Long[] prioridad = null;
    Long[] idNna = null;
    String numero = null;
    try {
        if (session.getAttribute("orden") != null) {
            orden = (String) session.getAttribute("orden");
        }
        if (session.getAttribute("agregar") != null) {
            agregar = (String) session.getAttribute("agregar");
        }
        if (session.getAttribute("eliminar") != null) {
            eliminar = (String) session.getAttribute("eliminar");
        }
        if (session.getAttribute("registrar") != null) {
            registrar = (String) session.getAttribute("registrar");
        }
        delete = (Long[]) session.getAttribute("delete");
        prioridad = (Long[]) session.getAttribute("prioridad");
        idNna = (Long[]) session.getAttribute("idNna");
        if (session.getAttribute("numero") != null) {
            numero = (String) session.getAttribute("numero");
        }
    } catch (Exception ex) {
        return new ModelAndView("redirect:/inicioper", map);
    }
    session.removeAttribute("orden");
    session.removeAttribute("agregar");
    session.removeAttribute("eliminar");
    session.removeAttribute("registrar");
    session.removeAttribute("delete");
    session.removeAttribute("prioridad");
    session.removeAttribute("idNna");
    session.removeAttribute("numero");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }
    if (agregar != null) {
        map.put("df", df);
        map.addAttribute("numero", numero);
        return new ModelAndView("/Personal/nna/agregar_exp_prioritario", map);
    }
    if (eliminar != null && delete != null) {
        for (Iterator<ExpedienteFamilia> iterator = listaFamiliasEstudio.iterator(); iterator.hasNext();) {
            ExpedienteFamilia temp = iterator.next();
            for (Long ident : delete) {
                if (temp.getIdexpedienteFamilia() == ident) {
                    iterator.remove();
                }
            }
        }
        map.put("df", df);
        map.put("listaNna", listaNnaEstudio);
        map.put("listaEstudioCaso", listaFamiliasEstudio);
        return new ModelAndView("/Personal/nna/reg_estudio", map);
    }
    if (registrar != null) {
        String existencia = ServicioMain.verificarExistenciaIDEstudio(orden);
        if (existencia.equals("si")) {
            String mensaje = "El identificador ingresado ya se encuentra en el sistema";
            map.put("df", df);
            map.put("mensaje", mensaje);
            map.put("listaNna", listaNnaEstudio);
            map.put("listaEstudioCaso", listaFamiliasEstudio);
            return new ModelAndView("/Personal/nna/reg_estudio", map);
        }
        if (orden == null || orden.equals("")) {
            String mensaje = "Debe ingresar el identificador de este estudio de caso";
            map.put("df", df);
            map.put("mensaje", mensaje);
            map.put("listaNna", listaNnaEstudio);
            map.put("listaEstudioCaso", listaFamiliasEstudio);
            return new ModelAndView("/Personal/nna/reg_estudio", map);
        } else if (listaFamiliasEstudio.isEmpty()) {
            String mensaje = "Debe tener al menos una familia en la lista";
            map.put("df", df);
            map.put("mensaje", mensaje);
            map.put("listaNna", listaNnaEstudio);
            map.put("listaEstudioCaso", listaFamiliasEstudio);
            return new ModelAndView("/Personal/nna/reg_estudio", map);
        } else {
            for (int i = 0; i < listaFamiliasEstudio.size(); i++) {
                for (int j = 0; j < listaNnaEstudio.size(); j++) {
                    EstudioCaso tempEst = new EstudioCaso();
                    tempEst.setNna(listaNnaEstudio.get(j));
                    tempEst.setExpedienteFamilia(listaFamiliasEstudio.get(i));
                    ExpedienteFamilia expFam1 = listaFamiliasEstudio.get(i);
                    expFam1.setEstado("estudio");
                    servicioEtapa.updateExpedienteFamilia(expFam1);
                    tempEst.setOrden(orden);
                    //                
                    tempEst.setPrioridad(prioridad[i]);
                    long nsolicitud = 1;
                    tempEst.setNSolicitud(nsolicitud);
                    servicioEtapa.crearEstudioCaso(tempEst);
                    //
                    String mensaje_log = "Se registr nueva familia al estudio de caso del NNA con Nombres: "
                            + listaNnaEstudio.get(j).getNombre() + listaNnaEstudio.get(j).getApellidoP()
                            + listaNnaEstudio.get(j).getApellidoM();
                    String Tipo_registro = "Estudio";
                    //
                    try {
                        String Numero_registro = tempEst.getOrden();

                        ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
                    } catch (Exception ex) {
                    }
                }
            }
            map.addAttribute("idNna", idNna);
            map.addAttribute("numero", numero);
            map.put("listaEstudios", ServicioMain.getListaEstudios());
            return new ModelAndView("/Personal/nna/lista_estudios", map);
        }
    }
    return new ModelAndView("/Personal/nna/reg_estudio", map);
}

From source file:com.enonic.vertical.adminweb.UserHandlerServlet.java

public void handlerForm(HttpServletRequest request, HttpServletResponse response, HttpSession session,
        AdminService admin, ExtendedMap formItems) throws VerticalAdminException {

    User user = securityService.getLoggedInAdminConsoleUser();
    UserStoreKey userStoreKey = UserStoreKey.parse(formItems.getString("userstorekey", null));
    UserStoreEntity userStore = userStoreDao.findByKey(userStoreKey);
    try {/*from   ww w. j  a v a 2 s.  co  m*/
        ExtendedMap xslParams = new ExtendedMap();

        Source xmlSource;

        // build XSL
        Source tempXSLSource = AdminStore.getStylesheet(session, "__build_user_form.xsl");
        StreamSource xslSource = buildXSL(session, tempXSLSource, buildDummyObjectClasses());

        int create = 0;
        Document userDoc;
        if (formItems.containsKey("key")) {
            String userGroupKeyStr = formItems.getString("key");
            GroupKey userGroupKey = new GroupKey(userGroupKeyStr);
            UserSpecification userSpec = new UserSpecification();
            userSpec.setDeletedState(UserSpecification.DeletedState.ANY);
            userSpec.setUserGroupKey(userGroupKey);

            UserEntity synchronizedUser = userStoreService.synchronizeUser(userSpec);

            final UserXmlCreator userXmlCreator = new UserXmlCreator();
            userXmlCreator.setIncludeUserFields(true);
            XMLDocument userXmlDoc = XMLDocumentFactory
                    .create(userXmlCreator.createUsersDocument(synchronizedUser, true, false));
            userDoc = userXmlDoc.getAsDOMDocument();

            DisplayNameResolver displayNameResolver = new DisplayNameResolver(userStore.getConfig());
            xslParams.put("generated-display-name",
                    displayNameResolver.resolveDisplayName(synchronizedUser.getName(),
                            synchronizedUser.getDisplayName(), synchronizedUser.getUserInfo()));

            Element usersElem = userDoc.getDocumentElement();
            Element userElem = XMLTool.getElement(usersElem, "user");
            String userKey = userElem.getAttribute("key");

            MultiValueMap adminParams = new MultiValueMap();
            adminParams.put("@userkey", userKey);
            adminParams.put("@typekey", 1);
            String logEntries = admin.getLogEntries(user, adminParams, 0, 5, true);
            XMLTool.mergeDocuments(userDoc, XMLTool.domparse(logEntries), true);
        } else {
            create = 1;
            userDoc = XMLTool.createDocument("users");
        }

        final UserStoreXmlCreator userStoreXmlCreator = new UserStoreXmlCreator(
                userStoreService.getUserStoreConnectorConfigs());
        XMLDocument userStoreXMLDoc = XMLDocumentFactory
                .create(new org.jdom.Document(userStoreXmlCreator.createUserStoreElement(userStore)));
        XMLTool.mergeDocuments(userDoc, userStoreXMLDoc.getAsDOMDocument(), true);

        CountryXmlCreator countryXmlCreator = new CountryXmlCreator();
        Collection<Country> countries = countryService.getCountries();
        countryXmlCreator.setIncludeRegionsInfo(false);
        XMLDocument countriesXMLDoc = XMLDocumentFactory
                .create(countryXmlCreator.createCountriesDocument(countries));
        XMLTool.mergeDocuments(userDoc, countriesXMLDoc.getAsDOMDocument(), true);

        LocaleXmlCreator localeXmlCreator = new LocaleXmlCreator();
        Locale[] locales = localeService.getLocales();
        XMLDocument localesXMLDoc = XMLDocumentFactory.create(localeXmlCreator.createLocalesDocument(locales));
        XMLTool.mergeDocuments(userDoc, localesXMLDoc.getAsDOMDocument(), true);

        DateTime now = timeService.getNowAsDateTime();
        TimeZoneXmlCreator timeZoneXmlCreator = new TimeZoneXmlCreator(now);
        Collection<DateTimeZone> timeZones = timeZoneService.getTimeZones();
        XMLDocument timeZonesDoc = XMLDocumentFactory
                .create(timeZoneXmlCreator.createTimeZonesDocument(timeZones));
        XMLTool.mergeDocuments(userDoc, timeZonesDoc.getAsDOMDocument(), true);

        VerticalAdminLogger.debug(this.getClass(), 0, userDoc);
        xmlSource = new DOMSource(userDoc);

        xslParams.put("userstorename", userStore.getName());
        xslParams.put("userstorekey", String.valueOf(userStoreKey));
        xslParams.put("page", formItems.getString("page"));
        xslParams.put("create", String.valueOf(create));
        if (user.isEnterpriseAdmin() || admin.isUserStoreAdmin(user, userStoreKey)) {
            xslParams.put("showdn", "true");
        }

        if (formItems.containsKey("mode")) {
            xslParams.put("mode", formItems.getString("mode"));
        }
        if (formItems.containsKey("callback")) {
            xslParams.put("callback", formItems.getString("callback"));
        }
        if (formItems.containsKey("modeselector")) {
            xslParams.put("modeselector", formItems.getString("modeselector"));
        }
        if (formItems.containsKey("userstoreselector")) {
            xslParams.put("userstoreselector", formItems.getString("userstoreselector"));
        }
        if (formItems.containsKey("excludekey")) {
            xslParams.put("excludekey", formItems.getString("excludekey"));
        }

        // WIZARD
        if (formItems.getString("wizard", "").equals("true")) {
            int step = 1;
            int prevstep = formItems.getInt("prevstep", 0);

            // If we just entered the wizard
            if (!formItems.containsKey("step")) {
                session.removeAttribute("userxml");
                session.removeAttribute("groupxml");
                session.removeAttribute("notification");
                session.removeAttribute("to_name");
                session.removeAttribute("to_mail");
                session.removeAttribute("subject");
                session.removeAttribute("mail_body");
                session.removeAttribute("grouparray");
                session.removeAttribute(SESSION_PHOTO_ITEM_KEY);

                session.setAttribute("from_name", user.getDisplayName());
                if (user.getEmail() != null) {
                    session.setAttribute("from_mail", user.getEmail());
                } else {
                    session.removeAttribute("from_mail");
                }
            } else {
                step = formItems.getInt("step");
            }

            // Store data from step 1 in session object
            if (prevstep == 1) {
                UserInfo userInfo = parseCustomUserFieldValues(userStoreKey, formItems);
                Document newDoc = XMLTool.domparse(buildUserXML(userInfo, formItems));

                storeUserPhotoInSession(session, formItems);

                // Check if username and password already exist
                String uid = null;
                String password = null;
                String oldXML = (String) session.getAttribute("userxml");
                if (oldXML != null) {
                    Document oldDoc = XMLTool.domparse(oldXML);
                    Element uidElem = (Element) XMLTool.selectNode(oldDoc.getDocumentElement(),
                            "/user/block/uid");
                    Element passwordElem = (Element) XMLTool.selectNode(oldDoc.getDocumentElement(),
                            "/user/block/password");
                    uid = XMLTool.getElementText(uidElem);
                    password = XMLTool.getElementText(passwordElem);
                }
                // Generate username and password, if not present
                if (uid == null) {
                    String firstname = XMLTool.getElementText(newDoc, "/user/block/first-name");
                    String lastname = XMLTool.getElementText(newDoc, "/user/block/last-name");
                    synchronized (admin) {
                        uid = admin.generateUID(firstname, lastname, userStoreKey);
                    }
                }
                Element uidElem = (Element) XMLTool.selectNode(newDoc.getDocumentElement(), "/user/block/uid");
                XMLTool.createTextNode(newDoc, uidElem, uid);
                if (password == null) {
                    synchronized (admin) {
                        try {
                            password = PasswordGenerator.generateNewPassword();
                        } catch (VerticalException ve) {
                            VerticalEngineLogger.warn(this.getClass(), 10, "Unable to generate password.",
                                    null);
                        }
                    }
                }
                Element passwordElem = (Element) XMLTool.selectNode(newDoc.getDocumentElement(),
                        "/user/block/password");
                XMLTool.createTextNode(newDoc, passwordElem, password);

                session.setAttribute("userxml", XMLTool.documentToString(newDoc));

                // Fill in values in notification form, if not present
                session.setAttribute("to_name", XMLTool.getElementText(newDoc, "/user/block/displayName"));
                session.setAttribute("to_mail", XMLTool.getElementText(newDoc, "/user/block/email"));
                session.setAttribute("mail_body",
                        "Username: " + XMLTool.getElementText(newDoc, "/user/block/uid") + (char) 13
                                + "Password: " + XMLTool.getElementText(newDoc, "/user/block/password"));

                // Check whether email address already exists
                String email = XMLTool.getElementText(newDoc, "/user/block/email");

                try {
                    userStoreService.verifyUniqueEmailAddress(email, userStoreKey);
                } catch (UserStorageExistingEmailException e) {
                    this.addError(4, "email", null);
                    this.addErrorsXML(userDoc);
                    step = 1;
                }
            }
            // Store data from step 2 in session object
            if (prevstep == 2) {
                Document newDoc;
                String newXML = (String) session.getAttribute("userxml");

                if (newXML != null) {
                    newDoc = XMLTool.domparse(newXML);
                    Element uidElem = (Element) XMLTool.selectNode(newDoc.getDocumentElement(),
                            "/user/block/uid");
                    Element passwordElem = (Element) XMLTool.selectNode(newDoc.getDocumentElement(),
                            "/user/block/password");
                    uidElem.setTextContent(formItems.getString("uid_dummy", ""));
                    passwordElem.setTextContent(formItems.getString("password_dummy", ""));
                    session.setAttribute("mail_body",
                            "Username: " + XMLTool.getElementText(newDoc, "/user/block/uid") + (char) 13
                                    + "Password: " + XMLTool.getElementText(newDoc, "/user/block/password"));
                } else {
                    UserInfo userInfo = parseCustomUserFieldValues(userStoreKey, formItems);
                    newDoc = XMLTool.domparse(buildUserXML(userInfo, formItems));
                }

                session.setAttribute("userxml", XMLTool.documentToString(newDoc));

                // Check whether uid already exists
                String uid = XMLTool.getElementText(newDoc, "/user/block/uid");

                if (uid != null && uid.length() > 0) {
                    UserSpecification userSpec = new UserSpecification();
                    userSpec.setName(uid);
                    userSpec.setUserStoreKey(userStoreKey);
                    userSpec.setDeletedStateNotDeleted();
                    if (userDao.findSingleBySpecification(userSpec) != null) {
                        this.addError(5, "uid_" + DUMMY_OID, null);
                        this.addErrorsXML(userDoc);
                        step = 2;
                    }
                }
            }
            // Store data from step 3 in session object
            else if (prevstep == 3) {
                if (formItems.containsKey("member")) {
                    org.jdom.Element userEl = new org.jdom.Element("user");
                    org.jdom.Element memberOfEl = new org.jdom.Element("memberOf");
                    userEl.addContent(memberOfEl);
                    org.jdom.Document membershipDoc = new org.jdom.Document(userEl);

                    String[] groupArray;
                    if (isArrayFormItem(formItems, "member")) {
                        groupArray = (String[]) formItems.get("member");
                    } else {
                        groupArray = new String[] { formItems.getString("member") };
                    }
                    session.setAttribute("grouparray", groupArray);
                    for (String aGroupArray : groupArray) {
                        try {
                            org.jdom.Document groupDocument = JDOMUtil
                                    .parseDocument(admin.getGroup(aGroupArray));
                            org.jdom.Element groupsEl = groupDocument.getRootElement();
                            memberOfEl.addContent(groupsEl.getChild("group").detach());
                        } catch (org.jdom.JDOMException e) {
                            /* Do nothing - move one */
                        }
                    }
                    session.setAttribute("groupxml", XMLTool.documentToString(membershipDoc));
                }
            }
            // Store data from step 4 in session object
            else if (prevstep == 4) {
                session.setAttribute("notification", formItems.getString("notification", "false"));
                if (formItems.getString("notification", "false").equals("true")) {
                    session.setAttribute("from_name", formItems.getString("from_name", ""));
                    session.setAttribute("from_mail", formItems.getString("from_mail", ""));
                    session.setAttribute("to_name", formItems.getString("to_name", ""));
                    session.setAttribute("to_mail", formItems.getString("to_mail", ""));
                    session.setAttribute("subject", formItems.getString("subject", ""));
                    session.setAttribute("mail_body", formItems.getString("mail_body", ""));
                }
            }

            // Load data from session object
            if (step == 1 || step == 2) {
                String newXML = (String) session.getAttribute("userxml");
                if (newXML != null) {
                    Document newDoc = XMLTool.domparse(newXML);
                    XMLTool.mergeDocuments(userDoc, newDoc, true);
                }
            } else if (step == 3) {
                String groupsXML = (String) session.getAttribute("groupxml");
                if (groupsXML != null) {
                    Document groups = XMLTool.domparse(groupsXML);
                    XMLTool.mergeDocuments(userDoc, groups, true);
                }
            } else if (step == 4) {
                String notification = (String) session.getAttribute("notification");
                if (notification == null) {
                    notification = "true";
                }
                xslParams.put("notification", notification);
                xslParams.put("from_name", session.getAttribute("from_name"));
                xslParams.put("from_mail", session.getAttribute("from_mail"));
                xslParams.put("to_name", session.getAttribute("to_name"));
                xslParams.put("to_mail", session.getAttribute("to_mail"));
                xslParams.put("subject", session.getAttribute("subject"));
                // Need to remove ascii #10 (line feed) to prevent double line breaks
                String mail_body = (String) session.getAttribute("mail_body");
                StringBuffer mail_body_fixed;
                if (mail_body != null) {
                    mail_body_fixed = new StringBuffer(mail_body.length());
                    for (int i = 0; i < mail_body.length(); i++) {
                        if (((int) mail_body.charAt(i)) != 10) {
                            mail_body_fixed.append(mail_body.charAt(i));
                        }
                    }
                    xslParams.put("mail_body", mail_body_fixed.toString());
                } else {
                    xslParams.put("mail_body", "");
                }
            }
            xslParams.put("step", Integer.toString(step));
            xslParams.put("wizard", Boolean.TRUE);
        } else {
            String languageCode = (String) session.getAttribute("languageCode");
            AdminConsoleTranslationService languageMap = AdminConsoleTranslationService.getInstance();
            languageMap.toDoc(userDoc, languageCode);
            xslParams.put("languagecode", languageCode);
        }

        addSortParamteres("block/uid", "ascending", formItems, session, xslParams);

        try {
            xslParams.put("canUpdateUser", String.valueOf(userStoreService.canUpdateUser(userStoreKey)));
        } catch (final InvalidUserStoreConnectorConfigException e) {
            xslParams.put("userStoreConfigError", e.getMessage());
        }

        if (user.getName().equals(formItems.get("key", ""))) {
            xslParams.put("profile", Boolean.TRUE);
        }

        if (memberOfResolver.hasEnterpriseAdminPowers(user.getKey())
                || memberOfResolver.hasUserStoreAdministratorPowers(user.getKey(), userStoreKey)) {
            xslParams.put("isadmin", "true");
        }

        xslParams.put("uid", user.getName());

        transformXML(session, response.getWriter(), xmlSource, xslSource, xslParams);
    } catch (IOException e) {
        VerticalAdminLogger.errorAdmin(this.getClass(), 20, "I/O error: %t", e);
    } catch (TransformerException e) {
        VerticalAdminLogger.errorAdmin(this.getClass(), 30, "XSLT error: %t", e);
    }
}

From source file:puma.sp.authentication.controllers.authentication.ResponseController.java

@RequestMapping(value = "/AuthenticationResponseServlet", method = RequestMethod.GET)
public String handleResponse(ModelMap model,
        @RequestParam(value = "RelayState", defaultValue = "") String relayState,
        @RequestParam(value = "Tenant", defaultValue = "") String tenantId,
        @RequestParam(value = "Post", defaultValue = "false") Boolean post, HttpSession session,
        UriComponentsBuilder builder, HttpServletRequest request) {
    try {/* www .  j  a va  2 s  .c o  m*/
        User subject = null;
        String subjectIdentifier;
        Tenant tenant;
        if (session.getAttribute("Post") != null)
            post = (Boolean) session.getAttribute("Post");
        if (tenantId.isEmpty())
            tenant = (Tenant) session.getAttribute("Tenant");
        else
            tenant = this.tenantService.findOne(Long.parseLong(tenantId));
        if (relayState.isEmpty())
            relayState = (String) session.getAttribute("RelayState");
        if (tenant == null) {
            throw new FlowException("No tenant could be identified in the authentication process");
        }
        if (relayState == null) {
            throw new FlowException("No relay state could be found in the authentication process");
        }
        if (session.getAttribute("Authenticated") == null
                || !((Boolean) session.getAttribute("Authenticated")).booleanValue()) {
            // Retrieve the identifier for the current subject
            if (tenant.isAuthenticationLocallyManaged()) {
                subjectIdentifier = (String) session.getAttribute("SubjectIdentifier");
                if (subjectIdentifier == null || subjectIdentifier.isEmpty())
                    throw new FlowException(
                            "Could not identify the user: null pointer or empty identifier found");
            } else {
                AuthenticationResponseHandler handler = new AuthenticationResponseHandler();
                String redirectionAddress = handler.interpret(this.sessionService, request);
                if (!redirectionAddress.equalsIgnoreCase((String) session.getAttribute("RelayState")))
                    throw new FlowException("Illegal relay state modification in the process");
                subjectIdentifier = handler.getSubject(request);
                if (subjectIdentifier == null || subjectIdentifier.isEmpty())
                    throw new FlowException(
                            "Could not identify the user: null pointer or empty identifier found");
                session.setAttribute("SubjectIdentifier", subjectIdentifier);
                logger.log(Level.INFO, "Completed request for subject " + subjectIdentifier + " from tenant "
                        + tenant.getName() + " succesfully. Performing attribute lookup.");
            }
        } else {
            // Subject is already authenticated
            subjectIdentifier = (String) session.getAttribute("SubjectIdentifier");
        }
        // Process response
        if (relayState != null && !relayState.isEmpty()
                && !relayState.equalsIgnoreCase(AccessController.DEFAULT_RELAYSTATE)) {
            // If a relay state was given, redirect back to the relay state, include the alias
            String redirectURL = removeTrailingSlash(new String(relayState));
            List<String> parameters = new ArrayList<String>(); // NOTE Parameters currently only work for GET-operations
            if (subjectIdentifier == null || subjectIdentifier.isEmpty())
                throw new ResponseProcessingException(
                        "Could not find a user with null or empty subject identifier. If this problem persists, please ask your administrator to inspect the logs.");
            parameters.add(new String("UserId=" + subjectIdentifier.trim()));
            parameters.add(new String("PrimaryTenant=" + tenant.getId().toString().trim()));
            Tenant current = tenant;
            while (current != null) {
                parameters.add(new String("Tenant=" + current.getId().toString().trim()));
                current = current.getSuperTenant();
            }
            // collect attributes
            if (tenant.isAuthenticationLocallyManaged()) {
                subject = this.userService.byId(Long.parseLong(subjectIdentifier));
                if (subject == null)
                    throw new ResponseProcessingException(
                            "Could not find a user with identifier " + subjectIdentifier);
                /*for (Attribute next: subject.getAttribute("Roles"))
                  parameters.add(new String("Role=" + next.getValue().trim()));
                if (!subject.getAttribute("Name").isEmpty())
                  parameters.add(new String("Name=" + subject.getAttribute("Name").get(0).getValue().toString().trim()));
                else
                  parameters.add(new String("Name=" + subject.getLoginName()).trim());
                if (!subject.getAttribute("E-Mail").isEmpty())
                  parameters.add(new String("Email=" + subject.getAttribute("E-Mail").get(0).getValue()).trim());*/
                for (AttributeFamily nextF : familyService.findAllOrganizationProvider(tenant))
                    if (nextF.getRetrievalStrategy().equals(RetrievalStrategy.PUSH))
                        for (Attribute next : subject.getAttribute(nextF.getName()))
                            parameters.add(new String(nextF.getName()) + "=" + next.getValue().trim());

                logger.log(Level.INFO, "Authentication completed for " + subject.getLoginName()
                        + ". Redirecting to " + redirectURL);
            } else {
                List<AttributeFamily> requestedAttributes = new ArrayList<AttributeFamily>(4);
                AttributeFamily email, role, name;
                name = new AttributeFamily();
                name.setName("Name");
                requestedAttributes.add(name);
                email = new AttributeFamily();
                email.setName("Email");
                requestedAttributes.add(email);
                role = new AttributeFamily();
                role.setName("Role");
                requestedAttributes.add(role);
                AttributeRequestHandler handler = new AttributeRequestHandler(requestedAttributes,
                        subjectIdentifier, tenant);
                String samlAttrRequest = handler.prepareResponse(null, handler.buildRequest(),
                        tenant.toHierarchy());
                /// Retrieve result of message
                AttributeResponseHandler responseHandler = new AttributeResponseHandler(requestedAttributes);
                String reply = send(tenant, samlAttrRequest); // Performs the actual request
                Map<String, List<String>> attributes = responseHandler.interpret(reply);
                for (String key : attributes.keySet()) {
                    List<String> next = attributes.get(key);
                    for (String nextValue : next)
                        parameters.add(new String(key + "=" + nextValue));
                }
            }
            session.removeAttribute("RelayState");
            session.removeAttribute("Post");
            session.setAttribute("Authenticated", true);

            if (post) {
                // Not fully supported
                model.addAttribute("relayState", relayState);
                model.addAttribute("userId", subjectIdentifier);
                model.addAttribute("token", generateToken());
                model.addAttribute("role", null); //TODO
                return "submit";
            } else {
                String respString = new String("");
                for (String next : parameters)
                    respString = respString + "&" + next.trim();
                respString = respString.substring(1);
                logger.info("Sending response with content " + respString);
                return "redirect:" + relayState + "?" + respString + "&Token=" + generateToken();
            }
        } else {
            // if no relay state was given, show an info page that the user has now an active session and can access services that use this authentication service as a verifier
            MessageManager.getInstance().addMessage(session, "success",
                    "You have successfully logged in. You can now use any of the applications that use this service as an authentication service.");
            return "redirect:/error";
        }
    } catch (MessageDecodingException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (org.opensaml.xml.security.SecurityException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (ResponseProcessingException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. Could not process the SAML response. Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (FlowException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. " + ex.getMessage()
                        + " Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (NumberFormatException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (SAMLException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. " + ex.getMessage()
                        + " Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (MessageEncodingException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (ServiceParameterException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    } catch (ElementProcessingException ex) {
        logger.log(Level.SEVERE, "Unable to process request", ex);
        MessageManager.getInstance().addMessage(session, "failure",
                "Failed to process the authentication process. Please retry and contact the administrator if this problem occurs again.");
        return "redirect:/error";
    }
}

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/MainInsertarRevision", method = RequestMethod.GET)
public ModelAndView MainInsertarRevision_GET(ModelMap map, HttpSession session) {
    String numero = null;/*w ww.java  2 s. c  o  m*/
    String comentarios = null;
    String agregarFamilia = null;
    String agregarEntidad = null;
    String eliminar = null;
    String registrar = null;
    String idNna = null;
    String[] delete;
    String[] fecha;
    try {
        if (session.getAttribute("numero") != null) {
            numero = (String) session.getAttribute("numero");
        }
        if (session.getAttribute("comentarios") != null) {
            comentarios = (String) session.getAttribute("comentarios");
        }
        if (session.getAttribute("agregarFamilia") != null) {
            agregarFamilia = (String) session.getAttribute("agregarFamilia");
        }
        if (session.getAttribute("agregarEntidad") != null) {
            agregarEntidad = (String) session.getAttribute("agregarEntidad");
        }
        if (session.getAttribute("eliminar") != null) {
            eliminar = (String) session.getAttribute("eliminar");
        }
        if (session.getAttribute("registrar") != null) {
            registrar = (String) session.getAttribute("registrar");
        }
        if (session.getAttribute("idNna") != null) {
            idNna = (String) session.getAttribute("idNna");
        }
        delete = (String[]) session.getAttribute("delete");
        fecha = (String[]) session.getAttribute("fecha");
    } catch (Exception ex) {
        return new ModelAndView("redirect:/inicioper", map);
    }
    session.removeAttribute("numero");
    session.removeAttribute("comentarios");
    session.removeAttribute("agregarFamilia");
    session.removeAttribute("agregarEntidad");
    session.removeAttribute("eliminar");
    session.removeAttribute("registrar");
    session.removeAttribute("idNna");
    session.removeAttribute("delete");
    session.removeAttribute("fecha");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }
    if (agregarFamilia != null) {
        map.put("df", df);
        map.addAttribute("idNna", idNna);
        return new ModelAndView("/Personal/nna/agregar_exp_revision", map);
    }
    if (agregarEntidad != null) {
        map.put("df", df);
        map.addAttribute("idNna", idNna);
        return new ModelAndView("/Personal/nna/agregar_entidad_revision", map);
    }
    if (eliminar != null && delete != null) {
        //            for (int i : delete) {
        //                listaRevision.remove(i);
        //            }
        for (Iterator<Object> iterator = listaRevision.iterator(); iterator.hasNext();) {
            Object temp = iterator.next();
            for (String ident : delete) {
                if (temp instanceof Entidad) {
                    Entidad temporalEnt = (Entidad) temp;
                    if (temporalEnt.getNombre().equals(ident)) {
                        iterator.remove();
                    }
                } else if (temp instanceof ExpedienteFamilia) {
                    ExpedienteFamilia temporalEF = (ExpedienteFamilia) temp;
                    if (temporalEF.getExpediente().equals(ident)) {
                        iterator.remove();
                    }
                }
            }

        }
        map.put("df", df);
        map.put("listaNna", listaNnaRevision);
        map.put("listaRevision", listaRevision);
        map.addAttribute("idNna", idNna);
        return new ModelAndView("/Personal/nna/reg_revision", map);
    }
    if (registrar != null && numero != null && !numero.equals("")) {
        String existeRev = ServicioMain.verificarExistenciaIDEstudio(numero);
        if (existeRev.equals("si")) {
            String mensaje = "el identificador ingresado ya existe";
            map.put("mensaje", mensaje);
            map.put("listaNna", listaNnaRevision);
            map.put("listaRevision", listaRevision);
            map.put("df", df);
            return new ModelAndView("/Personal/nna/reg_revision", map);
        }
        if (!listaRevision.isEmpty()) {
            for (int i = 0; i < listaRevision.size(); i++) {
                Object temp = listaRevision.get(i);
                if (temp instanceof Entidad) {
                    Entidad temporalEnt = (Entidad) temp;
                    for (Nna tempN : listaNnaRevision) {
                        Revision tempRev = new Revision();
                        tempRev.setNna(tempN);
                        tempRev.setIdEntidad(temporalEnt.getIdentidad());
                        tempRev.setNombre(temporalEnt.getNombre());
                        tempRev.setNumero(numero);
                        tempRev.setComentarios(comentarios);
                        if (fecha[i] != null && !fecha[i].equals("")) {
                            Date fechaRev = df.stringToDate(fecha[i]);
                            tempRev.setFechaRevision(fechaRev);
                        } else {
                            tempRev.setFechaRevision(null);
                        }
                        ServicioMain.crearRevision(tempRev);
                        String mensaje_log = "Se registr nueva revisin de expediente de NNA con ID: "
                                + String.valueOf(
                                        tempN.getNombre() + tempN.getApellidoP() + tempN.getApellidoM());
                        String Tipo_registro = "Registro";

                        try {
                            String Numero_registro = tempRev.getNumero();

                            ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
                        } catch (Exception ex) {
                        }
                    }

                } else if (temp instanceof ExpedienteFamilia) {
                    ExpedienteFamilia temporalEF = (ExpedienteFamilia) temp;
                    for (Nna tempN : listaNnaRevision) {
                        Revision tempRev = new Revision();
                        tempRev.setNna(tempN);
                        tempRev.setExpedienteFamilia(temporalEF);
                        tempRev.setNumero(numero);
                        tempRev.setComentarios(comentarios);
                        if (fecha[i] != null && !fecha[i].equals("")) {
                            Date fechaRev = df.stringToDate(fecha[i]);
                            tempRev.setFechaRevision(fechaRev);
                        } else {
                            tempRev.setFechaRevision(null);
                        }
                        ServicioMain.crearRevision(tempRev);
                        String mensaje_log = "Se registr nueva revisin de expediente de NNA con ID: "
                                + String.valueOf(
                                        tempN.getNombre() + tempN.getApellidoP() + tempN.getApellidoM());
                        String Tipo_registro = "Registro";

                        try {
                            String Numero_registro = tempRev.getNumero();

                            ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
                        } catch (Exception ex) {
                        }
                    }
                }
            }
            map.put("listaRevision", ServicioMain.getListaRevisiones());
            return new ModelAndView("/Personal/nna/lista_revision", map);
        }
        if (listaRevision.isEmpty()) {
            String mensaje = "Debe tener al menos una familia u Organismo en la lista";
            map.put("mensaje", mensaje);
        }
    } else if (registrar != null && (numero == null || numero.equals(""))) {
        String mensaje = "Debe ingresar el identificador de la Revisin de expediente";
        map.put("mensaje", mensaje);
    }
    map.put("listaNna", listaNnaRevision);
    map.put("listaRevision", listaRevision);
    map.put("df", df);
    return new ModelAndView("/Personal/nna/reg_revision", map);
}

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/ActualizarRegistro", method = RequestMethod.GET)
public ModelAndView ActualizarRegistro_GET(ModelMap map, HttpSession session) {
    String htFicha = "";
    String nFicha = "";
    String fechaIngresoFicha = "";
    String ht = "";
    String genNumExp = "";
    String numeroExp = "";
    String fechaIngreso = "";
    String tupa = "";
    String nacionalidad = "";
    String tipoFamilia = "";
    String tipoEspera = "";
    long unidad = 0;
    long entAsoc = 0;
    String volver = "";

    try {//from  w  w w .  j  a  v  a  2s. com
        htFicha = (String) session.getAttribute("htFicha");
        nFicha = (String) session.getAttribute("nFicha");
        fechaIngresoFicha = (String) session.getAttribute("fechaIngresoFicha");
        ht = (String) session.getAttribute("ht");
        genNumExp = (String) session.getAttribute("genNumExp");
        numeroExp = (String) session.getAttribute("numeroExp");
        fechaIngreso = (String) session.getAttribute("fechaIngreso");
        tupa = (String) session.getAttribute("tupa");
        nacionalidad = (String) session.getAttribute("nacionalidad");
        tipoFamilia = (String) session.getAttribute("tipoFamilia");
        tipoEspera = (String) session.getAttribute("tipoEspera");
        unidad = Long.parseLong(session.getAttribute("unidad").toString());
        entAsoc = Long.parseLong(session.getAttribute("entAsoc").toString());
        if (session.getAttribute("volver") != null) {
            volver = (String) session.getAttribute("volver");
        }
    } catch (Exception ex) {
        return new ModelAndView("redirect:/inicioper", map);
    }
    session.removeAttribute("htFicha");
    session.removeAttribute("nFicha");
    session.removeAttribute("fechaIngresoFicha");
    session.removeAttribute("ht");
    session.removeAttribute("genNumExp");
    session.removeAttribute("numeroExp");
    session.removeAttribute("fechaIngreso");
    session.removeAttribute("tupa");
    session.removeAttribute("nacionalidad");
    session.removeAttribute("tipoFamilia");
    session.removeAttribute("tipoEspera");
    session.removeAttribute("unidad");
    session.removeAttribute("entAsoc");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }
    //
    ExpedienteFamilia tempExpFam = new ExpedienteFamilia();
    tempExpFam = (ExpedienteFamilia) session.getAttribute("expediente_sesion");
    //
    if (genNumExp != null && !genNumExp.equals("")) {

        String ID = "";
        int year = Calendar.getInstance().get(Calendar.YEAR);

        //Luego debo generar un nuevo ID
        ArrayList<String> allExpedientes = new ArrayList();
        allExpedientes = ServicioPersonal.listaNumExpActuales();

        if (!allExpedientes.isEmpty()) {
            int numElem = allExpedientes.size();
            int cont = 0;
            int idAct = 0;
            int idSig = 0;

            for (String expedienteFamilia : allExpedientes) {
                numElem--;
                String[] parts = expedienteFamilia.split("-");
                idAct = Integer.parseInt(parts[0]);
                cont++;
                idSig = cont;
                map.put("idAct", idAct);
                map.put("idSig", idSig);
                if (idAct == idSig) {
                    if (numElem == 0) {
                        cont++;
                        String idGen = String.format("%04d", cont);
                        ID = idGen + "-" + year + "-MIMP/DGA-S";
                        map.put("idGen", idGen);
                    }
                } else {
                    String idGen = String.format("%04d", idSig);
                    ID = idGen + "-" + year + "-MIMP/DGA-S";
                    map.put("idGen", idGen);
                    break;
                }

            }
        } else {

            ID = "0001-" + year + "-MIMP/DGA-S";
        }

        tempExpFam.setNumeroExpediente(ID);
        ServicioMain.updateExpFam(tempExpFam);
        String mensaje_log = "El usuario, " + usuario.getUser() + " con ID: " + usuario.getIdpersonal()
                + ". Edit la " + "informacin de la familia con ID: "
                + tempExpFam.getFamilia().getIdfamilia();
        String Tipo_registro = "Personal";

        try {
            String Numero_registro = String.valueOf(usuario.getIdpersonal());

            ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
        } catch (Exception ex) {
        }

        //
        session.setAttribute("expediente_sesion", tempExpFam);
        //
        map.put("df", df);
        map.put("estado", session.getAttribute("etapaOrigen_sesion"));
        map.put("expediente", tempExpFam);
        map.put("listaUA", ServicioPersonal.ListaUa());
        map.put("listaEntidad", ServicioPersonal.ListaEntidades());
        map.addAttribute("volver", volver);
        return new ModelAndView("/Personal/familia/info_registro", map);
    }

    Unidad tempUa = ServicioPersonal.getUa(unidad);
    Entidad tempEnt = ServicioPersonal.getEntidad(entAsoc);

    //expediente.setNumero(numero);
    tempExpFam.setHtFicha(htFicha);
    tempExpFam.setnFicha(nFicha);
    if (fechaIngresoFicha != null && !fechaIngresoFicha.equals("")) {
        tempExpFam.setFechaIngresoFicha(df.stringToDate(fechaIngresoFicha));
    }
    if (fechaIngresoFicha == null || fechaIngresoFicha.equals("")) {
        tempExpFam.setFechaIngresoDga(null);
    }
    tempExpFam.setHt(ht);
    tempExpFam.setNumeroExpediente(numeroExp);
    if (fechaIngreso != null && !fechaIngreso.equals("")) {
        tempExpFam.setFechaIngresoDga(df.stringToDate(fechaIngreso));
    } else if (fechaIngreso == null || fechaIngreso.equals("")) {
        tempExpFam.setFechaIngresoDga(null);
    }
    if (tupa != null && !tupa.equals("")) {
        tempExpFam.setTupa(df.stringToDate(tupa));
    } else if (tupa == null || tupa.equals("")) {
        tempExpFam.setTupa(null);
    }

    tempExpFam.setNacionalidad(nacionalidad);
    //expediente.setRnsa(Short.parseShort(rnsa));
    //expediente.setRnaa(Short.parseShort(rnaa));

    tempExpFam.setTipoFamilia(tipoFamilia);
    tempExpFam.setTipoListaEspera(tipoEspera);

    tempExpFam.setUnidad(tempUa);
    tempExpFam.getFamilia().setEntidad(tempEnt);

    ServicioMain.updateExpFam(tempExpFam);
    ServicioMain.updateFam(tempExpFam.getFamilia());

    String mensaje_log = "El usuario, " + usuario.getUser() + " con ID: " + usuario.getIdpersonal()
            + ". Edit la " + "informacin de la familia con ID: " + tempExpFam.getFamilia().getIdfamilia();
    String Tipo_registro = "Personal";

    try {
        String Numero_registro = String.valueOf(usuario.getIdpersonal());

        ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
    } catch (Exception ex) {
    }

    //
    session.setAttribute("expediente_sesion", tempExpFam);
    //
    map.put("df", df);
    map.put("estado", session.getAttribute("etapaOrigen_sesion"));
    map.put("expediente", tempExpFam);
    map.put("listaUA", ServicioPersonal.ListaUa());
    map.put("listaEntidad", ServicioPersonal.ListaEntidades());
    map.addAttribute("volver", volver);
    return new ModelAndView("/Personal/familia/info_registro", map);
}

From source file:com.mimp.controllers.main.java

@RequestMapping(value = "/ActualizarAdoptante", method = RequestMethod.GET)
public ModelAndView ActualizarAdoptante_GET(ModelMap map, HttpSession session) {
    String adoptante = "";
    String nombre = "";
    String apellidoP = "";
    String apellidoM = "";
    String fechaNac = "";
    String lugarNac = "";
    String depNac = "";
    String paisNac = "";
    String doc = "";
    String numDoc = "";
    String pasaporte = "";
    String numCel = "";
    String correo = "";
    String estadoCivil = "";
    String fechaMat = "";
    String volver = "";
    try {//from  w w w . j a  va 2  s  . com
        adoptante = (String) session.getAttribute("adoptante");
    } catch (Exception ex) {
        return new ModelAndView("redirect:/inicioper", map);
    }
    nombre = (String) session.getAttribute("nombre");
    apellidoP = (String) session.getAttribute("apellidoP");
    apellidoM = (String) session.getAttribute("apellidoM");
    fechaNac = (String) session.getAttribute("fechaNac");
    lugarNac = (String) session.getAttribute("lugarNac");
    depNac = (String) session.getAttribute("depNac");
    paisNac = (String) session.getAttribute("paisNac");
    doc = (String) session.getAttribute("doc");
    numDoc = (String) session.getAttribute("numDoc");
    pasaporte = (String) session.getAttribute("pasaporte");
    numCel = (String) session.getAttribute("numCel");
    correo = (String) session.getAttribute("correo");
    estadoCivil = (String) session.getAttribute("estadoCivil");
    fechaMat = (String) session.getAttribute("fechaMat");
    volver = (String) session.getAttribute("volver");
    session.removeAttribute("adoptante");
    session.removeAttribute("nombre");
    session.removeAttribute("apellidoP");
    session.removeAttribute("apellidoM");
    session.removeAttribute("fechaNac");
    session.removeAttribute("lugarNac");
    session.removeAttribute("depNac");
    session.removeAttribute("paisNac");
    session.removeAttribute("doc");
    session.removeAttribute("numDoc");
    session.removeAttribute("pasaporte");
    session.removeAttribute("numCel");
    session.removeAttribute("correo");
    session.removeAttribute("estadoCivil");
    session.removeAttribute("fechaMat");

    Personal usuario = (Personal) session.getAttribute("usuario");
    if (usuario == null) {
        String mensaje = "La sesin ha finalizado. Favor identificarse nuevamente";
        map.addAttribute("mensaje", mensaje);
        return new ModelAndView("login", map);
    }

    //
    Adoptante tempEl = new Adoptante();
    Adoptante tempElla = new Adoptante();
    InfoFamilia tempInfoFam = new InfoFamilia();
    ExpedienteFamilia tempExpFam = new ExpedienteFamilia();

    tempEl = (Adoptante) session.getAttribute("el_sesion");
    tempElla = (Adoptante) session.getAttribute("ella_sesion");
    tempInfoFam = (InfoFamilia) session.getAttribute("infoFam_sesion");
    tempExpFam = (ExpedienteFamilia) session.getAttribute("expediente_sesion");
    //
    if (adoptante != null && adoptante.equals("el")) {
        tempEl.setNombre(nombre);
        tempEl.setApellidoP(apellidoP);
        tempEl.setApellidoM(apellidoM);
        if (fechaNac != null && !fechaNac.equals("")) {
            tempEl.setFechaNac(df.stringToDate(fechaNac));
        }
        if (fechaNac == null || fechaNac.equals("")) {
            tempEl.setFechaNac(null);
        }
        tempEl.setLugarNac(lugarNac);
        tempEl.setDepaNac(depNac);
        tempEl.setPaisNac(paisNac);
        if (doc != null && !doc.equals("")) {
            char d = doc.charAt(0);
            tempEl.setTipoDoc(d);
        }
        tempEl.setNDoc(numDoc);
        tempEl.setPasaporte(pasaporte);
        tempEl.setCelular(numCel);
        tempEl.setCorreo(correo);
        tempInfoFam.setEstadoCivil(estadoCivil);
        if (tempInfoFam.getEstadoCivil().equals("casados") && fechaMat != null && !fechaMat.equals("")) {
            tempInfoFam.setFechaMatrimonio(df.stringToDate(fechaMat));
        } else if (fechaMat == null || fechaMat.equals("")) {
            tempInfoFam.setFechaMatrimonio(null);
        }
        ServicioMain.updateInfoFam(tempInfoFam);
        //            El.setNivelInstruccion(nivelInstruccion);
        //            if (culminoNivel != null && !culminoNivel.equals("")) {
        //                El.setCulminoNivel(Short.parseShort(culminoNivel));
        //            }
        //            El.setProfesion(profesion);
        //            /*Trabajo*/
        //            if (trabDep != null && !trabDep.equals("")) {
        //                El.setTrabajadorDepend(Short.parseShort(trabDep));
        //            } else {
        //                El.setTrabajadorDepend(null);
        //            }
        //            if (ocupacionDep != null && !ocupacionDep.equals("")) {
        //                El.setOcupActualDep(ocupacionDep);
        //            } else {
        //                El.setOcupActualDep(null);
        //            }
        //            if (centroTrabajo != null && !centroTrabajo.equals("")) {
        //                El.setCentroTrabajo(centroTrabajo);
        //            } else {
        //                El.setCentroTrabajo(null);
        //            }
        //            if (direccionTrabajo != null && !direccionTrabajo.equals("")) {
        //                El.setDireccionCentro(direccionTrabajo);
        //            } else {
        //                El.setDireccionCentro(null);
        //            }
        //            if (telefonoTrabajo != null && !telefonoTrabajo.equals("")) {
        //                El.setTelefonoCentro(telefonoTrabajo);
        //            } else {
        //                El.setTelefonoCentro(null);
        //            }
        //            if (ingresoDep != null && !ingresoDep.equals("")) {
        //                El.setIngresoDep(Long.parseLong(ingresoDep));
        //            } else {
        //                El.setIngresoDep(null);
        //            }
        //            if (trabIndep != null && !trabIndep.equals("")) {
        //                El.setTrabajadorIndepend(Short.parseShort(trabIndep));
        //            } else {
        //                El.setTrabajadorIndepend(null);
        //            }
        //            if (ocupacionInd != null && !ocupacionInd.equals("")) {
        //                El.setOcupActualInd(ocupacionInd);
        //            } else {
        //                El.setOcupActualInd(null);
        //            }
        //
        //            if (ingresoInd != null && !ocupacionInd.equals("")) {
        //                El.setIngresoIndep(Long.parseLong(ingresoInd));
        //            } else {
        //                El.setIngresoIndep(null);
        //            }
        //            /*Fin Trabajo*/
        //            if (seguroSalud != null && !seguroSalud.equals("")) {
        //                El.setSeguroSalud(Short.parseShort(seguroSalud));
        //            }
        //            El.setTipoSeguro(tipoSeguro);
        //            if (seguroVida != null && !seguroVida.equals("")) {
        //                El.setSeguroVida(Short.parseShort(seguroVida));
        //            }
        //            if (sisPensiones != null && !sisPensiones.equals("")) {
        //                El.setSistPensiones(Short.parseShort(sisPensiones));
        //            }
        //            El.setSaludActual(estadoActual);

        ServicioMain.updateAdoptante(tempEl);
        if ((tempEl.getApellidoP() != null && !tempEl.getApellidoP().equals(""))
                && (tempElla.getApellidoP() != null && !tempElla.getApellidoP().equals(""))
                && tempExpFam != null) {
            tempExpFam.setExpediente(tempEl.getApellidoP() + " - " + tempElla.getApellidoP());
        } else if (tempEl.getApellidoP() != null && !tempEl.getApellidoP().equals("") && tempExpFam != null) {
            tempExpFam.setExpediente(tempEl.getApellidoP());
        } else if (tempElla.getApellidoP() != null && !tempElla.getApellidoP().equals("")
                && tempExpFam != null) {
            tempExpFam.setExpediente(tempElla.getApellidoP());
        }
        if (tempExpFam != null && tempExpFam.getIdexpedienteFamilia() != 0)
            servicioEtapa.updateExpedienteFamilia(tempExpFam);

        String mensaje_log = "El usuario, " + usuario.getUser() + " con ID: " + usuario.getIdpersonal()
                + ". Edit la " + "informacin del adoptante con ID: " + tempEl.getIdadoptante();
        String Tipo_registro = "Personal";

        try {
            String Numero_registro = String.valueOf(usuario.getIdpersonal());

            ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
        } catch (Exception ex) {
        }

        session.setAttribute("el_sesion", tempEl);
        session.setAttribute("ella_sesion", tempElla);
        session.setAttribute("expediente_sesion", tempExpFam);
        session.setAttribute("infoFam_sesion", tempInfoFam);

        map.put("df", df);
        map.put("estado", session.getAttribute("etapaOrigen_sesion"));
        map.put("infoFam", tempInfoFam);
        map.put("expediente", tempExpFam);
        map.addAttribute("volver", volver);
        map.put("El", tempEl);
        return new ModelAndView("/Personal/familia/info_el", map);
    } else if (adoptante != null) {

        tempElla.setNombre(nombre);
        tempElla.setApellidoP(apellidoP);
        tempElla.setApellidoM(apellidoM);
        if (fechaNac != null && !fechaNac.equals("")) {
            tempElla.setFechaNac(df.stringToDate(fechaNac));
        }
        if (fechaNac == null || fechaNac.equals("")) {
            tempElla.setFechaNac(null);
        }
        tempElla.setLugarNac(lugarNac);
        tempElla.setDepaNac(depNac);
        tempElla.setPaisNac(paisNac);
        if (doc != null && !doc.equals("")) {
            char d = doc.charAt(0);
            tempElla.setTipoDoc(d);
        }
        tempElla.setNDoc(numDoc);
        tempElla.setPasaporte(pasaporte);
        tempElla.setCelular(numCel);
        tempElla.setCorreo(correo);
        tempInfoFam.setEstadoCivil(estadoCivil);
        if (tempInfoFam.getEstadoCivil().equals("casados") && fechaMat != null && !fechaMat.equals("")) {
            tempInfoFam.setFechaMatrimonio(df.stringToDate(fechaMat));
        } else if (fechaMat == null || fechaMat.equals("")) {
            tempInfoFam.setFechaMatrimonio(null);
        }
        ServicioMain.updateInfoFam(tempInfoFam);
        //            Ella.setNivelInstruccion(nivelInstruccion);
        //            if (culminoNivel != null && !culminoNivel.equals("")) {
        //                Ella.setCulminoNivel(Short.parseShort(culminoNivel));
        //            }
        //            Ella.setProfesion(profesion);
        //            /*Trabajo*/
        //            if (trabDep != null && !trabDep.equals("")) {
        //                Ella.setTrabajadorDepend(Short.parseShort(trabDep));
        //            } else {
        //                Ella.setTrabajadorDepend(null);
        //            }
        //            if (ocupacionDep != null && !ocupacionDep.equals("")) {
        //                Ella.setOcupActualDep(ocupacionDep);
        //            } else {
        //                Ella.setOcupActualDep(null);
        //            }
        //            if (centroTrabajo != null && !centroTrabajo.equals("")) {
        //                Ella.setCentroTrabajo(centroTrabajo);
        //            } else {
        //                Ella.setCentroTrabajo(null);
        //            }
        //            if (direccionTrabajo != null && !direccionTrabajo.equals("")) {
        //                Ella.setDireccionCentro(direccionTrabajo);
        //            } else {
        //                Ella.setDireccionCentro(null);
        //            }
        //            if (telefonoTrabajo != null && !telefonoTrabajo.equals("")) {
        //                Ella.setTelefonoCentro(telefonoTrabajo);
        //            } else {
        //                Ella.setTelefonoCentro(null);
        //            }
        //            if (ingresoDep != null && !ingresoDep.equals("")) {
        //                Ella.setIngresoDep(Long.parseLong(ingresoDep));
        //            } else {
        //                Ella.setIngresoDep(null);
        //            }
        //            if (trabIndep != null && !trabIndep.equals("")) {
        //                Ella.setTrabajadorIndepend(Short.parseShort(trabIndep));
        //            } else {
        //                Ella.setTrabajadorIndepend(null);
        //            }
        //            if (ocupacionInd != null && !ocupacionInd.equals("")) {
        //                Ella.setOcupActualInd(ocupacionInd);
        //            } else {
        //                Ella.setOcupActualInd(null);
        //            }
        //
        //            if (ingresoInd != null && !ocupacionInd.equals("")) {
        //                Ella.setIngresoIndep(Long.parseLong(ingresoInd));
        //            } else {
        //                Ella.setIngresoIndep(null);
        //            }
        /*Fin Trabajo*/
        //            if (seguroSalud != null && !seguroSalud.equals("")) {
        //                Ella.setSeguroSalud(Short.parseShort(seguroSalud));
        //            }
        //            Ella.setTipoSeguro(tipoSeguro);
        //            if (seguroVida != null && !seguroVida.equals("")) {
        //                Ella.setSeguroVida(Short.parseShort(seguroVida));
        //            }
        //            if (sisPensiones != null && !sisPensiones.equals("")) {
        //                Ella.setSistPensiones(Short.parseShort(sisPensiones));
        //            }
        //            Ella.setSaludActual(estadoActual);

        ServicioMain.updateAdoptante(tempElla);
        if ((tempEl.getApellidoP() != null && !tempEl.getApellidoP().equals(""))
                && (tempElla.getApellidoP() != null && !tempElla.getApellidoP().equals(""))
                && tempExpFam != null) {
            tempExpFam.setExpediente(tempEl.getApellidoP() + " - " + tempElla.getApellidoP());
        } else if (tempEl.getApellidoP() != null && !tempEl.getApellidoP().equals("") && tempExpFam != null) {
            tempExpFam.setExpediente(tempEl.getApellidoP());
        } else if (tempElla.getApellidoP() != null && !tempElla.getApellidoP().equals("")
                && tempExpFam != null) {
            tempExpFam.setExpediente(tempElla.getApellidoP());
        }
        if (tempExpFam != null && tempExpFam.getIdexpedienteFamilia() != 0)
            servicioEtapa.updateExpedienteFamilia(tempExpFam);

        String mensaje_log = "El usuario, " + usuario.getUser() + " con ID: " + usuario.getIdpersonal()
                + ". Edit la " + "informacin del adoptante con ID: " + tempElla.getIdadoptante();
        String Tipo_registro = "Personal";

        try {
            String Numero_registro = String.valueOf(usuario.getIdpersonal());

            ServicioPersonal.InsertLog(usuario, Tipo_registro, Numero_registro, mensaje_log);
        } catch (Exception ex) {
        }
        session.setAttribute("el_sesion", tempEl);
        session.setAttribute("ella_sesion", tempElla);
        session.setAttribute("expediente_sesion", tempExpFam);
        session.setAttribute("infoFam_sesion", tempInfoFam);

        map.put("df", df);
        map.put("estado", session.getAttribute("etapaOrigen_sesion"));
        map.put("infoFam", tempInfoFam);
        map.put("expediente", tempExpFam);
        map.put("Ella", tempElla);
        map.addAttribute("volver", volver);
        return new ModelAndView("/Personal/familia/info_ella", map);

    } else {
        map.put("df", df);
        map.put("estado", session.getAttribute("etapaOrigen_sesion"));
        map.put("infoFam", tempInfoFam);
        map.put("expediente", tempExpFam);
        map.put("Ella", tempElla);
        map.addAttribute("volver", volver);
        return new ModelAndView("/Personal/familia/info_ella", map);
    }

}