style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Ayuda con JSP con Spring MVC vs Controllers.

Me podrian ayudar por favor U R G E N T E M E N T E.

Tengo el siguiente problema,

Estoy desarrollando un formulario para realizar la capturara de un proveedores, en él tengo varios combos de selección, cuando el usuario selecciona uno de esos combos tengo un metodo anotado con @RequestMapping que recibe el valor del combo y realiza una consulta a la BD para obtener el detalle del registro y asi poder llenar unos input text que se deben llenar automaticamente con la selección del combo, si me explico???

El problema es que no he podido mantener toda la informacion que ya tenia capturada hasta el momento de que el usuario seleccione el combo. Siempre va al @Controller y cuando regresa el formulario ya no tiene informacion, solo la que se llena automaticamente.

Me podrian ayudar por favor, de antemano gracias.

Este es el JSP.

<%@taglib prefix="spring" uri="http://www.springframework.org/tags" %>
<%@taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt_rt" %>

<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/resources/commons/css/estilos.css" />
  <title>MPEL - Insertar Proveedor</title>
  <script src="${pageContext.request.contextPath}/resources/commons/js/jquery-latest.js"></script>
  <script type="text/javascript">
  $(document).ready( function(){
        $("#btn_regresar").click(function(){
          var resp = confirm("Realmente desea salir de la pantalla Insertar Proveedor");
          if ( resp )
                $("div#insertar").hide();      
        });
  });
 
  function asignaValor(valor) {
          document.forms["proveedor_form"].nomorganizacion.value = valor;
  }
 
  function asignaValoresTipoPago(comboTipoPago) {
        if( comboTipoPago.value != null )
          window.location.href = "?idPagoAsignado=" + comboTipoPago.value;     
  }
 
  function asignaValoresTipoReverso(comboTipoReverso) {
    if( comboTipoReverso.value != null )
      window.location.href = "idReversoAsignado/" + comboTipoReverso.value;    
  }
 
  $(document).ready( function(){
        $("#btn_insertar").click(function(){
          var resp = confirm("Realmente desea registrar el proveedor ingresado");
          if ( resp ) {
                document.forms['proveedor_form'].submit();
                alert("El proveedor se ha registrado con éxito en la BD");  
          }
        });
  });
  </script>
 </head>
 
 <body>
  <form:form name="proveedor_form" commandName="proveedor" action="Insertar" method="GET">
  <div id="insertar" align="center">
  <table style="width: 70%; position: relative; top: 10px;">
   <tr>
    <td>    
   
     <table style="width: 100%; position: relative; top: 10px;">
      <tr>
       <td class="encabezado">Insertar Proveedor</td>
      </tr>
     </table>
     
     <!-- Seccion Información del proveedor -->
     <table style="width: 100%; position: relative; top: 10px;">
      <tr class="tablaTitulo1">
           <td colspan="4">Proveedores</td>        
          </tr>
          <tr>
           <td><form:hidden path="idproveedor" /></td>        
          </tr>                                        
      <tr>
           <td class="campos" width="20%"><form:label path="nomproveedor">Nombre del Proveedor: </form:label></td>        
           <td class="r1Left" width="40%"><form:input path="nomproveedor" cssClass="cajaText" /></td>
           <td class="campos" width="20%"><form:label path="idlayout">Id Layout: </form:label></td>        
           <td class="r1Left" width="20%"><form:input path="idlayout" cssClass="cajaText" maxlength="3" size="3" value="" /></td>                        
          </tr>
      <tr>     
           <td class="campos" width="20%"><form:label path="organizacion.idorganizaciones">Organizaci&oacute;n Asignada: </form:label></td>        
           <td class="r1Left" width="40%">
            <form:select path="organizacion.idorganizaciones" cssClass="cajaSelect" onchange="asignaValor(this.value);">
             <form:option value="0" label="Seleccionar..." />
         <form:options items="${organizacionesList}" itemValue="idorganizaciones" itemLabel="nomorganizacion" />
        </form:select>
           </td>
           <td class="campos" width="20%"><form:label path="organizacion.nomorganizacion">C&oacute;digo Organizaci&oacute;n: </form:label></td>        
           <td class="r1Left" width="20%"><form:input id="nomorganizacion" path="organizacion.nomorganizacion" cssClass="cajaText" disabled="true" /></td>
          </tr>
     </table>
     
     <!-- Seccion Tipo de Pago -->
     <table style="width: 100%; position: relative; top: 15px;">               
          <tr class="tablaTitulo1">
           <td colspan="5">Pagos</td>        
          </tr>
          <tr>
           <td width="15%">&nbsp;</td>        
           <td width="25%">&nbsp;</td>
           <td width="20%" class="tablaTitulo">KENAN</td>        
           <td width="20%" class="tablaTitulo">BRM Clearing House</td>
           <td width="20%" class="tablaTitulo">Clave</td>                            
          </tr>
          <tr>
           <td width="15%" class="campos"><form:label path="tippagasignado.pagrevdescripcion">Pago Asignado</form:label></td>        
           <td width="25%" class="r1Left">
            <form:select path="tippagasignado.pagrevdescripcion" cssClass="cajaSelect" onchange="asignaValoresTipoPago(this);">
             <form:option value="0" label="Seleccionar..." />
         <form:options items="${pagosBancosList}" itemValue="pagrevdescripcion" itemLabel="pagrevdescripcion" />
        </form:select>
           </td>
           <td width="20%" class="r1Left"><form:input path="tippagasignado.transtype" id="transtype" cssClass="cajaText" value="${detallePagosBancos.transtype}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tippagasignado.clrhouse" id="clrhouse" cssClass="cajaText" value="${detallePagosBancos.clrhouse}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tippagasignado.cvech" id="cvech" cssClass="cajaText" value="${detallePagosBancos.cvech}" disabled="true" /></td>
          </tr>
          <tr>
           <td width="15%" class="campos"><form:label path="tiprevasignado.pagrevdescripcion">Reverso Asignado</form:label></td>        
           <td width="25%" class="r1Left">
            <form:select path="tiprevasignado.pagrevdescripcion" cssClass="cajaSelect" onchange="asignaValoresTipoReverso(this);">
             <form:option value="0" label="Seleccionar..." />
         <form:options items="${pagosBancosList}" itemValue="pagrevdescripcion" itemLabel="pagrevdescripcion" />
        </form:select>
       </td>
           <td width="20%" class="r1Left"><form:input path="tiprevasignado.transtype" cssClass="cajaText" value="${detalleReversosBancos.transtype}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tiprevasignado.clrhouse" cssClass="cajaText" value="${detalleReversosBancos.clrhouse}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tiprevasignado.cvech" cssClass="cajaText" value="${detalleReversosBancos.cvech}" disabled="true" /></td>
          </tr>
     </table>
     
     <!-- Seccion Moneda -->
     <table style="width: 100%; position: relative; top: 15px;">
          <tr>
           <td width="20%">&nbsp;</td>        
           <td width="40%">&nbsp;</td>
           <td width="20%" class="tablaTitulo">C&oacute;digo ALFA</td>        
           <td width="20%"class="tablaTitulo">Descripci&oacute;n</td>
          </tr>
          <tr>
           <td width="20%" class="campos"><form:label path="moneda.monprimaria">Moneda Primaria Facturaci&oacute;n</form:label></td>        
           <td width="40%" class="r1Left">
            <form:select path="moneda.monprimaria" cssClass="cajaSelect" onchange="asignaValoresMonedaPrimaria(this.value);">
             <form:option value="0" label="Seleccionar..." />
         <form:options items="${monedasList}" itemValue="monprimaria" itemLabel="desmonprinaria" />
        </form:select>
           </td>
           <td width="20%" class="r1Left"><form:input path="moneda.codalfmonprimaria" cssClass="cajaText" disabled="true" /></td>      
           <td width="20%" class="r1Left"><form:input path="moneda.desmonprinaria" cssClass="cajaText" disabled="true" /></td>
          </tr>
          <tr>
           <td width="20%" class="campos"><form:label path="moneda.monsecundaria">Moneda Secundaria Local</form:label></td>        
           <td width="40%" class="r1Left">
            <form:select path="moneda.monsecundaria" cssClass="cajaSelect" onchange="asignaValoresMonedaSecundaria(this.value);">
             <form:option value="0" label="Seleccionar..." />
         <form:options items="${monedasList}" itemValue="monprimaria" itemLabel="desmonprinaria" />
        </form:select>
           </td>
           <td width="20%" class="r1Left"><form:input path="moneda.codalfmonsecundaria" cssClass="cajaText" disabled="true" /></td>      
           <td width="20%" class="r1Left"><form:input path="moneda.desmonsecundaria" cssClass="cajaText" disabled="true" /></td>
          </tr>
     </table>
     
     <!-- Seccion Check List -->
     <table style="width: 100%; position: relative; top: 15px;">
          <tr>
           <td width="10%" class="campos"><form:label path="acuconsulta">Consultas</form:label></td>
           <td width="10%" class="r1LeftProveedores"><form:checkbox path="acuconsulta" value="1"></form:checkbox></td>
           <td width="10%" class="campos"><form:label path="acupago">Pagos</form:label></td>
           <td width="10%" class="r1LeftProveedores"><form:checkbox path="acupago" value="1"></form:checkbox></td>
           <td width="10%" class="campos"><form:label path="acureverso">Reversos</form:label></td>
           <td width="10%" class="r1LeftProveedores"><form:checkbox path="acureverso" value="1"></form:checkbox></td>
           <td width="10%" class="campos"><form:label path="metodo">M&eacute;todo</form:label></td>        
           <td width="30%" class="r1Left">
            <form:select path="metodo" cssClass="cajaSelect">
             <form:option value="" label="Seleccionar..." />
         <form:option value="1" label="ISO 8583" />
         <form:option value="2" label="WSDL OXXO" />
         <form:option value="3" label="WSDL GENERICO" />
        </form:select>
           </td>
          </tr>
         </table>
         
         <!-- Seccion Comunicaciones -->
          <table style="width: 100%; position: relative; top: 20px;">
           <tr class="tablaTitulo1">
            <td colspan="6">Comunicaci&oacute;n</td>        
           </tr>
           <tr>
            <td width="15%" class="campos"><form:label path="ip1">Direcci&oacute;n IP 1</form:label></td>        
            <td width="15%" class="r1Left"><form:input path="ip1" cssClass="cajaText" /></td>
            <td width="15%" class="campos"><form:label path="puerto1">Puerto</form:label></td>        
            <td width="15%" class="r1Left"><form:input path="puerto1" cssClass="cajaText" /></td>
            <td width="15%" class="campos"><form:label path="comunicacion1">Comunicaci&oacute;n</form:label></td>        
            <td width="25%" class="r1Left">
             <form:select path="comunicacion1" cssClass="cajaSelect">
              <form:option value="" label="Seleccionar..." />
          <form:option value="ENLACE DEDICADO" label="ENLACE DEDICADO" />
          <form:option value="VPN" label="VPN" />
        </form:select>
                </td>
           </tr>
           <tr>
            <td width="15%" class="campos"><form:label path="ip2">Direcci&oacute;n IP 2</form:label></td>        
            <td width="15%" class="r1Left"><form:input path="ip2" cssClass="cajaText" /></td>
            <td width="15%" class="campos"><form:label path="puerto2">Puerto</form:label></td>        
            <td width="15%" class="r1Left"><form:input path="puerto2" cssClass="cajaText" /></td>
            <td width="15%" class="campos"><form:label path="comunicacion2">Comunicaci&oacute;n</form:label></td>        
            <td width="25%" class="r1Left">
             <form:select path="comunicacion2" cssClass="cajaSelect">
              <form:option value="" label="Seleccionar..." />
          <form:option value="ENLACE DEDICADO" label="ENLACE DEDICADO" />
          <form:option value="VPN" label="VPN" />
        </form:select>
            </td>
           </tr>
          </table>
         
          <!-- Seccion Cuenta Deposito -->
          <table style="width: 100%; position: relative; top: 20px;">
           <tr>
            <td width="25%" class="campos"><form:label path="bancodeposito">Banco Dep&oacute;sito</form:label></td>        
            <td width="25%" class="r1Left"><form:input path="bancodeposito" cssClass="cajaText" /></td>
            <td width="25%" class="campos"><form:label path="ctadeposito">Cuenta Dep&oacute;sito</form:label></td>        
            <td width="25%" class="r1Left"><form:input path="ctadeposito" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td width="25%" class="campos"><form:label path="esqdeposito">Esquema Dep&oacute;sito</form:label></td>        
            <td width="25%" class="r1Left"><form:input path="esqdeposito" cssClass="cajaText" /></td>
            <td width="25%">&nbsp;</td>        
            <td width="25%">&nbsp;</td>
           </tr>
          </table>
         
          <!-- Correos Alertas -->
          <table style="width: 100%; position: relative; top: 25px;">
           <tr class="tablaTitulo1">
            <td colspan="2">Alertas</td>        
           </tr>
           <tr>
            <td class="campos" width="25%"><form:label path="email1">Correo Electr&oacute;nico Alertas 1</form:label></td>        
            <td class="r1Left" width="75%"><form:input path="email1" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td class="campos" width="25%"><form:label path="email2">Correo Electr&oacute;nico Alertas 2</form:label></td>        
            <td class="r1Left" width="75%"><form:input path="email2" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td class="campos" width="25%"><form:label path="email3">Correo Electr&oacute;nico Alertas 3</form:label></td>        
            <td class="r1Left" width="75%"><form:input path="email3" cssClass="cajaText" /></td>
           </tr>
          </table>
         
          <!-- Dias operacion Alertas -->
          <table style="width: 100%; position: relative; top: 35px;">
           <tr>
            <td width="20%" class="campos"><form:label path="">D&iacute;as de Operaci&oacute;n Alertas</form:label></td>
            <td width="10%" class="campos"><form:label path="inidiaoperacion">De</form:label></td>
            <td width="30%" class="r1Left">
             <form:select path="inidiaoperacion" cssClass="cajaSelect">
              <form:option value="" label="Seleccionar..." />
          <form:option value="Lunes" label="Lunes" />
          <form:option value="Martes" label="Martes" />
          <form:option value="Miercoles" label="Miercoles" />
          <form:option value="Jueves" label="Jueves" />
          <form:option value="Viernes" label="Viernes" />
          <form:option value="Sabado" label="Sabado" />
          <form:option value="Domingo" label="Domingo" />
         </form:select>
            </td>
            <td width="10%" class="campos"><form:label path="findiaoperacion">Hasta</form:label></td>
            <td width="30%" class="r1Left">
             <form:select path="findiaoperacion" cssClass="cajaSelect">
              <form:option value="" label="Seleccionar..." />
          <form:option value="Lunes" label="Lunes" />
          <form:option value="Martes" label="Martes" />
          <form:option value="Miercoles" label="Miercoles" />
          <form:option value="Jueves" label="Jueves" />
          <form:option value="Viernes" label="Viernes" />
          <form:option value="Sabado" label="Sabado" />
          <form:option value="Domingo" label="Domingo" />
         </form:select>
            </td>
           </tr>
           <tr>
            <td width="20%" class="campos"><form:label path="">Horarios de Operaci&oacute;n Alertas</form:label></td>
            <td width="10%" class="campos"><form:label path="inihroperacion">De</form:label></td>
            <td width="30%" class="r1Left"><form:input path="inihroperacion" cssClass="cajaText" /></td>
            <td width="10%" class="campos"><form:label path="finhroperacion">Hasta</form:label></td>
            <td width="30%" class="r1Left"><form:input path="finhroperacion" cssClass="cajaText" /></td>
           </tr>
          </table>
         
          <!-- Configuracion Alertas -->
          <table style="width: 100%; position: relative; top: 45px;">
           <tr>
            <td width="30%" class="tablaTitulo1">Configuraci&oacute;n de Alertas</td>
            <td width="10%">&nbsp;</td>
            <td width="60%" class="tablaTitulo1">Texto Alertas</td>
           </tr>
           <tr>
            <td width="30%" class="campos"><form:label path="stsmsg1">ENTE - MPEL</form:label></td>
            <td width="10%" class="r1LeftProveedores"><form:checkbox path="stsmsg1" value="1"></form:checkbox></td>
            <td width="60%" class="r1Left"><form:input path="msgalerta1" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td width="30%" class="campos"><form:label path="stsmsg2">MPEL - BUS SKY</form:label></td>
            <td width="10%" class="r1LeftProveedores"><form:checkbox path="stsmsg2" value="1"></form:checkbox></td>
            <td width="60%" class="r1Left"><form:input path="msgalerta2" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td width="30%" class="campos"><form:label path="stsmsg3">STAND IN</form:label></td>
            <td width="10%" class="r1LeftProveedores"><form:checkbox path="stsmsg3" value="1"></form:checkbox></td>
            <td width="60%" class="r1Left"><form:input path="msgalerta3" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td width="30%" class="campos"><form:label path="stsmsg4">SIN TRANSACCIONES</form:label></td>
            <td width="10%" class="r1LeftProveedores"><form:checkbox path="stsmsg4" value="1"></form:checkbox></td>
            <td width="60%" class="r1Left"><form:input path="msgalerta4" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td width="30%" class="campos"><form:label path="aletiestransacciones">Alertar Sin Transacciones</form:label></td>
            <td width="10%" class="r1Left"><form:input path="aletiestransacciones" size="2" cssClass="cajaText" /></td>
            <td width="60%" class="campos"><form:label path="aletiestransacciones">Minutos</form:label></td>
           </tr>
          </table>
         
          <!-- Seccion Datos -->
          <table style="width: 100%; position: relative; top: 55px;">
           <tr class="tablaTitulo1">
            <td colspan="4">Datos</td>        
           </tr>
           <tr>
            <td class="campos" width="30%"><form:label path="direccion">Direcci&oacute;n</form:label></td>
            <td class="r1Left" width="70%"><form:input path="direccion" cssClass="cajaText" /></td>
           </tr>
          </table>
          <table style="width: 100%; position: relative; top: 55px;">
           <tr>
            <td width="25%" class="campos"><form:label path="colpoblacion">Colonia / Poblaci&oacute;n</form:label></td>
            <td width="25%" class="r1Left"><form:input path="colpoblacion" cssClass="cajaText" /></td>
            <td width="25%" class="campos"><form:label path="codpostal">C&oacute;digo Postal</form:label></td>
            <td width="25%" class="r1Left"><form:input path="codpostal" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td width="25%" class="campos"><form:label path="delmunicipio">Delegaci&oacute;n</form:label></td>
            <td width="25%" class="r1Left"><form:input path="delmunicipio" cssClass="cajaText" /></td>
            <td width="25%" class="campos"><form:label path="estprovincia">Estado / Provincia</form:label></td>
            <td width="25%" class="r1Left"><form:input path="estprovincia" cssClass="cajaText" /></td>
           </tr>
           <tr>
            <td width="25%" class="campos"><form:label path="telefono">Tel&eacute;fono</form:label></td>
            <td width="25%" class="r1Left"><form:input path="telefono" cssClass="cajaText" /></td>
            <td width="25%" class="campos"><form:label path="contacto">Contacto</form:label></td>
            <td width="25%" class="r1Left"><form:input path="contacto" cssClass="cajaText" /></td>
           </tr>
      </table>
   
      <!-- Botonera -->
      <table align="center" style="width: 100%; position: relative; top: 65px;">                                      
       <tr align="center">
            <td>
             <input type="button" value="Insertar" class="Boton" id="btn_insertar" />
            </td>      
            <td align="center">
             <input type="reset" value="Limpiar" class="Boton">
            </td>      
            <td align="center">
         <input type="button" value="Regresar" class="Boton" id="btn_regresar" />
            </td>                                      
           </tr>
      </table>
         
    </td>
   </tr>
  </table>
  </div>
  </form:form>
 </body>
</html>    

Este es el Controller

/**
 *
 */

package com.sky.mx.mpel.web;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.dao.DataIntegrityViolationException;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import com.sky.mx.mpel.dao.MonedasDAO;
import com.sky.mx.mpel.dao.OrganizacionesDAO;
import com.sky.mx.mpel.dao.PagosBancosDAO;
import com.sky.mx.mpel.dao.ProveedoresDAO;
import com.sky.mx.mpel.dominio.Tblproveedores;
import com.sky.mx.mpel.dto.TblcatmonedasDTO;
import com.sky.mx.mpel.dto.TblcatpagbancosDTO;
import com.sky.mx.mpel.dto.TblcatusuariosDTO;
import com.sky.mx.mpel.dto.TblorganizacionesDTO;
import com.sky.mx.mpel.dto.TblproveedoresDTO;
import com.sky.mx.mpel.exception.GenericException;

/**
 * Controlador para el modulo de Administración de Proveedores.
 * @author Jonathan Carrillo - TCS
 */

@Controller
@RequestMapping(value = "/Proveedores")
public class ProveedoresController {
       
        private static final Logger logger = LoggerFactory.getLogger(
                        ProveedoresController.class);
       
        @Autowired
        private ProveedoresDAO proveedoresDAO;
       
        @Autowired
        private OrganizacionesDAO organizacionesDAO;
       
        @Autowired
        private PagosBancosDAO pagosBancosDAO;
       
        @Autowired
        private MonedasDAO monedasDAO;
       
        /**
         * Método utilizado para realizar la captura de un Proveedor
         * @return String
         * @param map
         */

        @RequestMapping(value = "/insertaProveedor")
        public String capturarProveedor(HttpServletRequest request, Map<String, Object> map) {
               
                logger.info("");
               
                String idPagoAsignado = request.getParameter("idPagoAsignado");
                String idReversoAsignado = request.getParameter("idReversoAsignado");
               
                map.put("proveedor", new TblproveedoresDTO());
                map.put("organizacionesList", organizacionesDAO.consultarOrganizacionesPorEstatus());
                map.put("pagosBancosList", pagosBancosDAO.consultarPagosBancosPorEstatus());
                map.put("monedasList", monedasDAO.consultarMonedasPorEstatus());
               
                if ( idPagoAsignado != null ) {
                  map.put("detallePagosBancos", pagosBancosDAO.consultarPagosBancosPorID(idPagoAsignado));
                }
               
                if ( idReversoAsignado != null ) {
                  map.put("detalleReversosBancos", pagosBancosDAO.consultarPagosBancosPorID(idReversoAsignado));
                }
               
                return "/Administracion/Proveedores/altaProveedores";
        }
       
        /**
         * Método utilizado para obtener la información del Pago Asignado
         * @return String
         * @param map
         */

        @RequestMapping(value = "/idPagoAsignado/{idPagoAsignado}")
        public String obtenerPagoAsignado(@PathVariable("idPagoAsignado") String idPagoAsignado,
                Map<String, Object> map) {
               
                if ( idPagoAsignado != null )
                        map.put("detallePagosBancos", pagosBancosDAO.consultarPagosBancosPorID(idPagoAsignado));
                               
                return "/Administracion/Proveedores/altaProveedores";
        }
       
        /**
         * Método utilizado para obtener la información del Pago Asignado
         * @return String
         * @param map
         */

        @RequestMapping(value = "/idReversoAsignado/{idReversoAsignado}")
        public String obtenerReversoAsignado(@PathVariable("idReversoAsignado") String idReversoAsignado,
                        Map<String, Object> map) {
               
                System.out.println("Si estamos entrando");
               
                if ( idReversoAsignado != null ) {
                        map.put("detalleReversosBancos", pagosBancosDAO.consultarPagosBancosPorID(idReversoAsignado));
                }
               
                map.put("proveedor", new TblproveedoresDTO());
               
                return "/Administracion/Proveedores/altaProveedores";
        }
       
        /**
         * Método encargado de realizar la inserción de un Proveedor
         * @return String
         * @param model, usuarioDTO
         */

        @RequestMapping(value = "/Insertar", method = RequestMethod.GET)
        public String insertarProveedor(@ModelAttribute("proveedor") TblproveedoresDTO proveedorDTO) {
               
                boolean resultado = false;
               
                User user = (User)SecurityContextHolder.getContext().getAuthentication().getPrincipal();
                String userId = user.getUsername();
               
                if ( proveedorDTO != null ) {
                       
                        TblcatusuariosDTO usuAlta = new TblcatusuariosDTO();
                        usuAlta.setUsuario(userId);
                        proveedorDTO.setUsucrea(usuAlta);
                        TblcatusuariosDTO usuBaja = new TblcatusuariosDTO();
                        usuBaja.setUsuario(userId);
                        proveedorDTO.setUsubaja(usuBaja);
                        TblcatusuariosDTO usuModifica = new TblcatusuariosDTO();
                        usuModifica.setUsuario(userId);
                        proveedorDTO.setUsumodifica(usuModifica);
                       
                        try{
                                resultado = proveedoresDAO.insertarProveedor(proveedorDTO);
                                       
                                if(resultado){
                                        String msg = "El proveedor " + proveedorDTO.getNomproveedor() + " se ha registrado con éxito en la BD MPEL";
                                        System.out.println("Mensaje: " + msg);
                                }
                        }catch(DataIntegrityViolationException dIVE){
                                throw new GenericException("El proveedor " + proveedorDTO.getNomproveedor() + " no se ha podido registrar en el sistema.");
                        }
                }
               
                return "redirect:/Proveedores/insertaProveedor";
        }
       
        /**
         * Método utilizado para realizar la baja lógica de un Proveedor
         * @return String
         * @param map
         */

        @RequestMapping(value = "/eliminaProveedor")
        public String borrarProveedor(Map<String, Object> map){
               
                map.put("proveedorList", proveedoresDAO.consultarProveedoresPorEstatus());
               
                return "/Administracion/Proveedores/bajaProveedores";
        }
       
        /**
         * Método que redirecciona a la página de Eliminar Proveedor
         */

        @RequestMapping(value = "/Eliminar/{proveedorId}", method = RequestMethod.GET)
        public String eliminarProveedor(@PathVariable("proveedorId") Short proveedorId) {
               
                boolean resultado = false;
               
                User user = (User)SecurityContextHolder.getContext().getAuthentication().getPrincipal();
                String userId = user.getUsername();
               
                Tblproveedores proveedorBD = proveedoresDAO.consultarProveedorPorID(proveedorId);
               
                if ( proveedorBD != null ) {
                       
                        TblproveedoresDTO proveedorDTO = new TblproveedoresDTO();
                        proveedorDTO.setIdproveedor(proveedorBD.getIdproveedor());
                        proveedorDTO.setIdlayout(proveedorBD.getIdlayout());
                        proveedorDTO.setNomproveedor(proveedorBD.getNomproveedor());
                        TblorganizacionesDTO organizacionDTO = new TblorganizacionesDTO();
                        organizacionDTO.setIdorganizaciones(proveedorBD.getOrganizacion().getIdorganizaciones());
                        proveedorDTO.setOrganizacion(organizacionDTO);
                        TblcatpagbancosDTO tipoPagoAsignadoDTO = new TblcatpagbancosDTO();
                        tipoPagoAsignadoDTO.setPagrevdescripcion(proveedorBD.getTippagasignado().getPagrevdescripcion());
                        proveedorDTO.setTippagasignado(tipoPagoAsignadoDTO);
                        proveedorDTO.setAcuconsulta(proveedorBD.getAcuconsulta());
                        proveedorDTO.setAcupago(proveedorBD.getAcupago());
                        proveedorDTO.setAcureverso(proveedorBD.getAcureverso());
                        proveedorDTO.setMetodo(proveedorBD.getMetodo());
                        proveedorDTO.setIp1(proveedorBD.getIp1());
                        proveedorDTO.setPuerto1(proveedorBD.getPuerto1());
                        proveedorDTO.setComunicacion1(proveedorBD.getComunicacion1());
                        proveedorDTO.setIp2(proveedorBD.getIp2());
                        proveedorDTO.setPuerto2(proveedorBD.getPuerto2());
                        proveedorDTO.setComunicacion2(proveedorBD.getComunicacion2());
                        proveedorDTO.setBancodeposito(proveedorBD.getBancodeposito());
                        proveedorDTO.setCtadeposito(proveedorBD.getCtadeposito());
                        proveedorDTO.setEsqdeposito(proveedorBD.getEsqdeposito());
                        proveedorDTO.setDiadeposito(proveedorBD.getDiadeposito());
                        proveedorDTO.setEmail1(proveedorBD.getEmail1());
                        proveedorDTO.setEmail2(proveedorBD.getEmail2());
                        proveedorDTO.setEmail3(proveedorBD.getEmail3());
                        proveedorDTO.setInidiaoperacion(proveedorBD.getInidiaoperacion());
                        proveedorDTO.setFindiaoperacion(proveedorBD.getFindiaoperacion());
                        proveedorDTO.setInihroperacion(proveedorBD.getInihroperacion());
                        proveedorDTO.setFinhroperacion(proveedorBD.getFinhroperacion());
                        proveedorDTO.setStsmsg1(proveedorBD.getStsmsg1());
                        proveedorDTO.setStsmsg2(proveedorBD.getStsmsg2());
                        proveedorDTO.setStsmsg3(proveedorBD.getStsmsg3());
                        proveedorDTO.setStsmsg4(proveedorBD.getStsmsg4());
                        proveedorDTO.setMsgalerta1(proveedorBD.getMsgalerta1());
                        proveedorDTO.setMsgalerta2(proveedorBD.getMsgalerta2());
                        proveedorDTO.setMsgalerta3(proveedorBD.getMsgalerta3());
                        proveedorDTO.setMsgalerta4(proveedorBD.getMsgalerta4());
                        proveedorDTO.setAletiestransacciones(proveedorBD.getAletiestransacciones());
                        proveedorDTO.setDireccion(proveedorBD.getDireccion());
                        proveedorDTO.setColpoblacion(proveedorBD.getColpoblacion());
                        proveedorDTO.setCodpostal(proveedorBD.getCodpostal());
                        proveedorDTO.setCiudad(proveedorBD.getCiudad());
                        proveedorDTO.setEstprovincia(proveedorBD.getEstprovincia());
                        proveedorDTO.setDelmunicipio(proveedorBD.getDelmunicipio());
                        proveedorDTO.setTelefono(proveedorBD.getTelefono());
                        proveedorDTO.setContacto(proveedorBD.getContacto());
                        proveedorDTO.setBorrlogico(new Short("1"));
                        TblcatpagbancosDTO tipoReversoAsignadoDTO = new TblcatpagbancosDTO();
                        tipoReversoAsignadoDTO.setPagrevdescripcion(proveedorBD.getTiprevasignado().getPagrevdescripcion());
                        proveedorDTO.setTiprevasignado(tipoReversoAsignadoDTO);
                        TblcatusuariosDTO usuCreaDTO = new TblcatusuariosDTO();
                        usuCreaDTO.setUsuario(proveedorBD.getUsucrea().getUsuario());
                        proveedorDTO.setUsucrea(usuCreaDTO);
                        proveedorDTO.setFchcrea(proveedorBD.getFchcrea());
                        TblcatusuariosDTO usuBajaDTO = new TblcatusuariosDTO();
                        usuBajaDTO.setUsuario(userId);
                        proveedorDTO.setUsubaja(usuBajaDTO);
                        proveedorDTO.setFchbaja(new Date());
                        TblcatusuariosDTO usuModificaDTO = new TblcatusuariosDTO();
                        usuModificaDTO.setUsuario(proveedorBD.getUsumodifica().getUsuario());
                        proveedorDTO.setUsumodifica(usuModificaDTO);
                        proveedorDTO.setFchmodifica(null);
                        TblcatmonedasDTO monedaDTO = new TblcatmonedasDTO();
                        monedaDTO.setMonprimaria(proveedorBD.getMoneda().getMonprimaria());
                        proveedorDTO.setMoneda(monedaDTO);
                       
                        try{
                                resultado = proveedoresDAO.eliminarProveedor(proveedorDTO);
                               
                                if(resultado){
                                        String msg = "El proveedor " + proveedorDTO.getNomproveedor() + " se ha eliminado con éxito de la BD MPEL";
                                        System.out.println("Mensaje: " + msg);
                                }
                        }catch(Exception e){
                                e.printStackTrace();
                        }
                }      
                       
                return "redirect:/Proveedores/eliminaProveedor";
        }
       
        /**
         * Método que redirecciona a la página de Editar Proveedores.
         */

        @RequestMapping(value = "/actualizaProveedor", method = RequestMethod.GET)
        public String actualizarProveedor(Map<String, Object> map) {
               
                map.put("proveedorList", proveedoresDAO.consultarProveedoresPorEstatus());
               
                return "/Administracion/Proveedores/selActProveedor";
        }
       
        /**
         * Método utilizado para obtener el detalle de un Proveedor
         */

        @RequestMapping(value = "/detalleRegistroActualizar/{proveedorId}", method = RequestMethod.GET)
        public String consultarDetalleProveedor(@PathVariable("proveedorId") Short proveedorId,
                        Map<String, Object> map) {
               
                map.put("proveedorDetalle", proveedoresDAO.consultarProveedorPorID(proveedorId));
                map.put("organizacionesList", organizacionesDAO.consultarOrganizacionesPorEstatus());
                map.put("pagosBancosList", pagosBancosDAO.consultarPagosBancosPorEstatus());
                map.put("monedasList", monedasDAO.consultarMonedasPorEstatus());
               
                return "/Administracion/Proveedores/editarProveedores";
        }
       
        /**
         * Método que realiza la actualización del Proveedor
         * @return String
         * @param model, proveedorDTO
         */

        @RequestMapping(value = "/detalleRegistroActualizar/Actualizar/{proveedorDetalle}", method = RequestMethod.GET)
        public String actualizarProveedor(@ModelAttribute("proveedorDetalle") TblproveedoresDTO proveedorDTO) {
               
                boolean resultado = false;
               
                User user = (User)SecurityContextHolder.getContext().getAuthentication().getPrincipal();
                String userId = user.getUsername();
               
                if ( proveedorDTO != null ) {
                       
                        TblcatusuariosDTO usuModificaDTO = new TblcatusuariosDTO();
                        usuModificaDTO.setUsuario(userId);
                        proveedorDTO.setUsumodifica(usuModificaDTO);
                        proveedorDTO.setFchmodifica(new Date());
                       
                        try{
                                resultado = proveedoresDAO.actualizarProveedor(proveedorDTO);
                                       
                                if(resultado){
                                        String msg = "El proveedor " + proveedorDTO.getNomproveedor() + " se ha actualizado con éxito en la BD MPEL";
                                        System.out.println("Mensaje: " + msg);
                                }
                        }catch(Exception e){
                                e.printStackTrace();
                        }
                }
               
                return "redirect:/Proveedores/actualizaProveedor";
        }
       
        /**
         * Método que redirecciona a la página de Consultar Proveedores
         */

        @RequestMapping(value = "/consultaProveedor", method = RequestMethod.GET)
        public String consultarProveedores(Map<String, Object> map) {
               
                map.put("proveedorList", proveedoresDAO.consultarProveedoresPorEstatus());
               
                return "/Administracion/Proveedores/consultarProveedores";
        }
       
        /**
         * Método utilizado para obtener el detalle de un Proveedor
         */

        @RequestMapping(value = "/Consultar/{proveedorId}", method = RequestMethod.GET)
        public String consultarDetalleProveedorConsultar(@PathVariable("proveedorId") Short proveedorId,
                        Map<String, Object> map) {
               
                map.put("proveedor", proveedoresDAO.consultarProveedorPorID(proveedorId));
               
                return "/Administracion/Proveedores/detalleConsultarProveedor";
        }
       
        /**
         * @return the proveedoresDAO
         */

        public ProveedoresDAO getProveedoresDAO() {
                return proveedoresDAO;
        }

        /**
         * @param proveedoresDAO the proveedoresDAO to set
         */

        public void setProveedoresDAO(ProveedoresDAO proveedoresDAO) {
                this.proveedoresDAO = proveedoresDAO;
        }
       
        /**
         * @return the organizacionesDAO
         */

        public OrganizacionesDAO getOrganizacionesDAO() {
                return organizacionesDAO;
        }

        /**
         * @param organizacionesDAO the organizacionesDAO to set
         */

        public void setOrganizacionesDAO(OrganizacionesDAO organizacionesDAO) {
                this.organizacionesDAO = organizacionesDAO;
        }
       
        /**
         * @return the pagosBancosDAO
         */

        public PagosBancosDAO getPagosBancosDAO() {
                return pagosBancosDAO;
        }

        /**
         * @param pagosBancosDAO the pagosBancosDAO to set
         */

        public void setPagosBancosDAO(PagosBancosDAO pagosBancosDAO) {
                this.pagosBancosDAO = pagosBancosDAO;
        }
       
        /**
         * @return the monedasDAO
         */

        public MonedasDAO getMonedasDAO() {
                return monedasDAO;
        }

        /**
         * @param monedasDAO the monedasDAO to set
         */

        public void setMonedasDAO(MonedasDAO monedasDAO) {
                this.monedasDAO = monedasDAO;
        }
       
        /**
         *
         * @param binder
         */

        @InitBinder
        public void initBinder(WebDataBinder binder) {
                SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");    
                dateFormat.setLenient(false);      
                // true passed to CustomDateEditor constructor means convert empty String to null    
                binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, true));
        }      
}

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de neko069

Sugerencia.

No con respecto a tu problema en sí, si no al código.
Porqué no minimizas lo más que puedas el problema, es decir no tienes que postear tooooooooodo el Jsp, ni toooooda la clase sólo aquéllo que te da problemas.

Gracias.

Ok Tratare de ser lo mas breve que se pueda!!!

Este es el metodo del Controller

/**
         * Método utilizado para realizar la captura de un Proveedor
         * @return String
         * @param map
         */

        @RequestMapping(value = "/insertaProveedor")
        public String capturarProveedor(HttpServletRequest request, Map<String, Object> map) {
               
                logger.info("");
               
                String idPagoAsignado = request.getParameter("idPagoAsignado");
                String idReversoAsignado = request.getParameter("idReversoAsignado");
               
                map.put("proveedor", new TblproveedoresDTO());
                map.put("organizacionesList", organizacionesDAO.consultarOrganizacionesPorEstatus());
                map.put("pagosBancosList", pagosBancosDAO.consultarPagosBancosPorEstatus());
                map.put("monedasList", monedasDAO.consultarMonedasPorEstatus());
               
                if ( idPagoAsignado != null ) {
                  map.put("detallePagosBancos", pagosBancosDAO.consultarPagosBancosPorID(idPagoAsignado));
                }
               
                if ( idReversoAsignado != null ) {
                  map.put("detalleReversosBancos", pagosBancosDAO.consultarPagosBancosPorID(idReversoAsignado));
                }
               
                return "/Administracion/Proveedores/altaProveedores";
        }
       
        /**
         * Método utilizado para obtener la información del Pago Asignado
         * @return String
         * @param map
         */

        @RequestMapping(value = "/idPagoAsignado/{idPagoAsignado}")
        public String obtenerPagoAsignado(@PathVariable("idPagoAsignado") String idPagoAsignado,
                Map<String, Object> map) {
               
                if ( idPagoAsignado != null )
                        map.put("detallePagosBancos", pagosBancosDAO.consultarPagosBancosPorID(idPagoAsignado));
                               
                return "/Administracion/Proveedores/altaProveedores";
        }
       
        /**
         * Método utilizado para obtener la información del Pago Asignado
         * @return String
         * @param map
         */

        @RequestMapping(value = "/idReversoAsignado/{idReversoAsignado}")
        public String obtenerReversoAsignado(@PathVariable("idReversoAsignado") String idReversoAsignado,
                        Map<String, Object> map) {
               
                System.out.println("Si estamos entrando");
               
                if ( idReversoAsignado != null ) {
                        map.put("detalleReversosBancos", pagosBancosDAO.consultarPagosBancosPorID(idReversoAsignado));
                }
               
                map.put("proveedor", new TblproveedoresDTO());
               
                return "/Administracion/Proveedores/altaProveedores";
        }
       
        /**
         * Método encargado de realizar la inserción de un Proveedor
         * @return String
         * @param model, usuarioDTO
         */

        @RequestMapping(value = "/Insertar", method = RequestMethod.GET)
        public String insertarProveedor(@ModelAttribute("proveedor") TblproveedoresDTO proveedorDTO) {
               
                boolean resultado = false;
               
                User user = (User)SecurityContextHolder.getContext().getAuthentication().getPrincipal();
                String userId = user.getUsername();
               
                if ( proveedorDTO != null ) {
                       
                        TblcatusuariosDTO usuAlta = new TblcatusuariosDTO();
                        usuAlta.setUsuario(userId);
                        proveedorDTO.setUsucrea(usuAlta);
                        TblcatusuariosDTO usuBaja = new TblcatusuariosDTO();
                        usuBaja.setUsuario(userId);
                        proveedorDTO.setUsubaja(usuBaja);
                        TblcatusuariosDTO usuModifica = new TblcatusuariosDTO();
                        usuModifica.setUsuario(userId);
                        proveedorDTO.setUsumodifica(usuModifica);
                       
                        try{
                                resultado = proveedoresDAO.insertarProveedor(proveedorDTO);
                                       
                                if(resultado){
                                        String msg = "El proveedor " + proveedorDTO.getNomproveedor() + " se ha registrado con éxito en la BD MPEL";
                                        System.out.println("Mensaje: " + msg);
                                }
                        }catch(DataIntegrityViolationException dIVE){
                                throw new GenericException("El proveedor " + proveedorDTO.getNomproveedor() + " no se ha podido registrar en el sistema.");
                        }
                }
               
                return "redirect:/Proveedores/insertaProveedor";
        }

Esta es la parte de la JSP con la que estoy teniedo problemas

function asignaValoresTipoPago(comboTipoPago) {
        if( comboTipoPago.value != null )
          window.location.href = "?idPagoAsignado=" + comboTipoPago.value;     
  }
 
  function asignaValoresTipoReverso(comboTipoReverso) {
    if( comboTipoReverso.value != null )
      window.location.href = "idReversoAsignado/" + comboTipoReverso.value;    
  }

<body>
  <form:form name="proveedor_form" commandName="proveedor" action="Insertar" method="GET">
  <div id="insertar" align="center">
  <table style="width: 70%; position: relative; top: 10px;">
   <tr>
    <td>    

<!-- Seccion Tipo de Pago -->
     <table style="width: 100%; position: relative; top: 15px;">               
          <tr class="tablaTitulo1">
           <td colspan="5">Pagos</td>        
          </tr>
          <tr>
           <td width="15%">&nbsp;</td>        
           <td width="25%">&nbsp;</td>
           <td width="20%" class="tablaTitulo">KENAN</td>        
           <td width="20%" class="tablaTitulo">BRM Clearing House</td>
           <td width="20%" class="tablaTitulo">Clave</td>                            
          </tr>
          <tr>
           <td width="15%" class="campos"><form:label path="tippagasignado.pagrevdescripcion">Pago Asignado</form:label></td>        
           <td width="25%" class="r1Left">
            <form:select path="tippagasignado.pagrevdescripcion" cssClass="cajaSelect" onchange="asignaValoresTipoPago(this);">
             <form:option value="0" label="Seleccionar..." />
         <form:options items="${pagosBancosList}" itemValue="pagrevdescripcion" itemLabel="pagrevdescripcion" />
        </form:select>
           </td>
           <td width="20%" class="r1Left"><form:input path="tippagasignado.transtype" id="transtype" cssClass="cajaText" value="${detallePagosBancos.transtype}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tippagasignado.clrhouse" id="clrhouse" cssClass="cajaText" value="${detallePagosBancos.clrhouse}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tippagasignado.cvech" id="cvech" cssClass="cajaText" value="${detallePagosBancos.cvech}" disabled="true" /></td>
          </tr>
          <tr>
           <td width="15%" class="campos"><form:label path="tiprevasignado.pagrevdescripcion">Reverso Asignado</form:label></td>        
           <td width="25%" class="r1Left">
            <form:select path="tiprevasignado.pagrevdescripcion" cssClass="cajaSelect" onchange="asignaValoresTipoReverso(this);">
             <form:option value="0" label="Seleccionar..." />
         <form:options items="${pagosBancosList}" itemValue="pagrevdescripcion" itemLabel="pagrevdescripcion" />
        </form:select>
       </td>
           <td width="20%" class="r1Left"><form:input path="tiprevasignado.transtype" cssClass="cajaText" value="${detalleReversosBancos.transtype}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tiprevasignado.clrhouse" cssClass="cajaText" value="${detalleReversosBancos.clrhouse}" disabled="true" /></td>
           <td width="20%" class="r1Left"><form:input path="tiprevasignado.cvech" cssClass="cajaText" value="${detalleReversosBancos.cvech}" disabled="true" /></td>
          </tr>
     </table>

</td>
   </tr>
  </table>
  </div>
  </form:form>
 </body>

Imagen de beto.bateria

Sin entrar a detalles del

Sin entrar a detalles del codigo que escribiste:

Recuerda que html, al hacer cualquier cambio, vuelve a recargar toda la pagina de nuevo por lo tanto:

Para que tengas todos los valores instanciados de nuevo, necesitas que en el servidor se lean todas las variables, e instanciarlas al mandar la hoja (espero que me hayas entendido).

Usar Ajax, con ajax no necesitas recargar la hoja web.

Gracias!!!

Gracias amigo, pero no entendi muy bien lo que estas tratando de decirme, si tienes algun ejemplo, seria bueno.

Imagen de beto.bateria

por pasos

por pasos:
1.- llenas una parte del formulario.
2.- le das click al combo
3.- El controller debe de obtener la informacion de TODOS los campos que ya llenaste con request.getParameter.
4.- El controller procesa la informacion.
5.- Creas el jsp y le asignas los valores que obtuviste en el paso 3 a los campos correspondientes.

Eso es todo.

Esto seria en una pagina normalita con html interactuando con servlets, deberia funcionar con lo que estas haciendo, Ignoro si con los frameworks que usas se puede hacer de otra manera.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">