@RequestMapping(value = "/queryVisita", method = RequestMethod.POST)
  public String queryVisita(@ModelAttribute("visita") visita c, Model m, SessionStatus session)
      throws Exception {

    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S");
    Date datum = df.parse(c.getFechaString());
    GregorianCalendar cal = new GregorianCalendar();
    cal.setTime(datum);
    XMLGregorianCalendar xmlCal = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);

    /** ******************* Calling web service *********************** */
    List<Visita> lista = visitaService.traeVisita(xmlCal);
    Iterator<Visita> i = lista.iterator();
    Visita v = i.next();

    visita t =
        new visita(
            datum,
            v.getRecomendacion(),
            v.getComentarios(),
            v.getRfc(),
            v.getLote(),
            v.getParcela(),
            v.getProductor(),
            v.getAsesor());

    List<Maleza> malezas = malezaService.traeMalezas(xmlCal);

    Iterator<Maleza> j = malezas.iterator();
    listaMalezas.clear();
    while (j.hasNext()) {
      Maleza mal = j.next();
      maleza esta = new maleza(datum, mal.getNombre(), mal.getPoblacion());
      listaMalezas.add(esta);
    }

    List<Plaga> plagas = plagaService.traePlaga(xmlCal);
    Iterator<Plaga> k = plagas.iterator();
    listaPlagas.clear();
    while (k.hasNext()) {
      Plaga p = k.next();
      maleza dieser = new maleza(datum, p.getNombre(), p.getPoblacion());
      listaPlagas.add(dieser);
    }

    List<Enfermedad> sicks = enfermedadService.traeEnfermedades(xmlCal);
    listaSick.clear();
    Iterator<Enfermedad> l = sicks.iterator();
    while (l.hasNext()) {
      Enfermedad sick = l.next();
      listaSick.add(sick.getEnfermedad());
    }

    m.addAttribute("visitaForm", t);
    m.addAttribute("malezas", listaMalezas);
    m.addAttribute("plagas", listaPlagas);
    m.addAttribute("enfermedades", listaSick);

    return "redirect:informesDone";
  }
  private void addEnfermedad(XMLGregorianCalendar cal, visita v, GregorianCalendar c) {
    fertinsumos.dataservice.enfermedad.ObjectFactory factory =
        new fertinsumos.dataservice.enfermedad.ObjectFactory();
    fertinsumos.dataservice.enfermedad.AgregaEnfermendad enfermedad =
        factory.createAgregaEnfermendad();
    enfermedad.setFechaVisita(cal);
    enfermedad.setNombre(v.getMaleza());

    enfermedadService.agregaEnfermendad(cal, v.getEnfermedad());

    listaSick.add(v.getEnfermedad());
  }
  @RequestMapping(value = "agregaEnfermedad", method = RequestMethod.POST)
  public String addEnfermedad(
      @ModelAttribute("visitaForm") visita t, @ModelAttribute("enfermedades") List<String> lista)
      throws Exception {
    logger.info("Agregando enfermedad " + t.getFecha().toString());
    GregorianCalendar cal = new GregorianCalendar();
    cal.setTime(t.getFecha());

    enfermedadService.agregaEnfermendad(
        DatatypeFactory.newInstance().newXMLGregorianCalendar(cal), t.getEnfermedad());
    listaSick.add(t.getEnfermedad());

    return "redirect:informesDone";
  }