Foros del Web » Programación para mayores de 30 ;) » Java »

Struts2 + Ajax

Estas en el tema de Struts2 + Ajax en el foro de Java en Foros del Web. Saludos... Tengo una pagina jsp con dos selects (combos) de Struts2 donde el segundo se actualiza en funcion del primero. <s:select label="Carrera" .... onchange="submit()" /> ...
  #1 (permalink)  
Antiguo 08/07/2009, 14:04
 
Fecha de Ingreso: junio-2008
Mensajes: 11
Antigüedad: 15 años, 10 meses
Puntos: 0
Mensaje Struts2 + Ajax

Saludos...
Tengo una pagina jsp con dos selects (combos) de Struts2 donde el segundo se actualiza en funcion del primero.

<s:select label="Carrera" .... onchange="submit()" />
<s:select label="Materia" .... />

Lo que necesito es que no se actualice toda la pagina sino solo el segundo select al hacer el request, en otras palagras lo que deseo es utilizar Ajax con Struts2.
¿Alguna idea para este caso? ¿Existe alguna libreria?

Gracias.
  #2 (permalink)  
Antiguo 15/07/2009, 00:35
 
Fecha de Ingreso: marzo-2007
Mensajes: 47
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Struts2 + Ajax

No sé si esto servirá igual te orienta, porque yo me estoy iniciando y no sé irá bien la cosa pero el caso es que hace lo que tú quieres bueno que es con struts :

mi combo municipios carga el de codigo postal

Código HTML:
<html:select property="municipio" onchange="javascript:cargarcodigopostal();" >
	<html:optionsCollection property="municipios" value="codigo"      label="nombre" />
		</html:select>
			
<html:select property="codigopostal">
		<html:optionsCollection property="codigospostales" value="codigo"          label="nombre" />
</html:select> 
funcion javascript:

Código PHP:

function cargarcodigopostal(){
    
document.forms[0].action="codigopostalproveedores.do";
    
document.forms[0].submit();

struts-config.xml
Código PHP:

    
<action path="/codigopostalproveedores" input="/paginas.proveedores.jsp"
                
type="com.Action.ProveedoresCodigoAction" name="proveedoresForm"
                
scope="session" unknown="false" validate="false">
                <
forward name="exito" path="/paginas/proveedores.jsp"></forward>
        </
action
y mi Action, he de dedir que en vez de obtener los códigos en una consulta de base de datos, tenemos un servicio web porque hay datos centralizados, pero con cambiar lo del servicio por la consulta será suficiente

Código PHP:
public class ProveedoresCodigoAction extends Action{
    public 
ActionForward execute (ActionMapping mapping,ActionForm form,
            
HttpServletRequest request,
            
HttpServletResponse response)throws Exception
    
{
        
ProveedoresForm proveedoresForm= (ProveedoresFormform;
        
long idmunicipio=proveedoresForm.getMunicipio();
             
//servicio web
        
ClienteCodigopostal codigopostalWs=new ClienteCodigopostal();
        
proveedoresForm.setCodigospostales(codigopostalWs.getCodigopostalfiltro(idmunicipio));
        return (
mapping.findForward("exito"));
    }


y hasta aquí llego.. espero que te sirva de algo y suerte
  #3 (permalink)  
Antiguo 15/07/2009, 02:43
 
Fecha de Ingreso: febrero-2009
Mensajes: 102
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Struts2 + Ajax

No necesitas librerías, sólo tienes que hacer la petición ajax desde la función javascript al que llames en tu onChange y rellenar de nuevo el select con tu la respuesta que recibas. Va bien, porque yo también he trabajado con eso.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:12.