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

ayuda struts+DWR (ajax) problema con request

Estas en el tema de ayuda struts+DWR (ajax) problema con request en el foro de Java en Foros del Web. Saludos, estoy aprendiendo con java especificamente hibernate + struts, revisando en internet encontre esta pagina http://blog.lshimokawa.net/2007/12/accediendo-al-request-o-la-sesin-con.html en la cual se hace referencia a que mediante ...
  #1 (permalink)  
Antiguo 10/04/2010, 23:24
Avatar de ciberedwuard2003  
Fecha de Ingreso: agosto-2009
Mensajes: 10
Antigüedad: 14 años, 8 meses
Puntos: 0
ayuda struts+DWR (ajax) problema con request

Saludos, estoy aprendiendo con java especificamente hibernate + struts, revisando en internet encontre esta pagina http://blog.lshimokawa.net/2007/12/accediendo-al-request-o-la-sesin-con.html en la cual se hace referencia a que mediante DWR se puede acceder al request, especificamente a los metodos basados en la clase WebContext, sin embargo yo estoy probando lo siguiente:

1. tengo una clase tipo ActionForm la cual contiene 2 metodos (uno que carga o setea un atributo al request y otro que ejecuta la funcion de DWR):


public class alumnoAction extends ActionForm {

public ActionForward mostrar_alumnos( ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {

request.setAttribute("nombre", "edwuard quintero");

//imprimo el objeto request para saber de que tipo es:
System.out.println( "request->"+ request );
// la consola de java devuelve: org.apache.catalina.core.ApplicationHttpRequest@1f ba15d

// bien es el request de la aplicacion


//retorna el forward
return mapping.findForward("showPage");
}

}

el forward va a una pagina JSP la cual muestra la informacion:
ejemplo de la pagina JSP:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Pagina de Prueba</title>
</head>
<body>
Hola: <% request.getAttribute("nombre"); %>
</body>
</html>


2. ahora bien, tengo configurado el DWR.XML asi:


<dwr>
<allow>
<create creator="new" javascript="jsDWR" >
<param name="class" value="com.app.struts.action.alumnoAction"/>
</create>
</allow>
</dwr>



este es el script en la pagina principal que llama a DWR:

<script type="text/javascript">
function update() {

var name = dwr.util.getValue("nombre");

jsDWR.cambiaNombre(name, function(data) {
dwr.util.setValue("nombre", data);
});

}
</script>


EL PROBLEMA! es que cuando se llama a la funcion de DWR "cambiaNombre()" me dice que el request y la session son NULL

public String cambiaNombre(String name) {

WebContext ctx = WebContextFactory.get();
HttpSession session = ctx.getHttpServletRequest().getSession(false);
HttpServletRequest req = ctx.getHttpServletRequest();

//intento recuperar el request y la session
System.out.println( "session->"+session ); //la consola de java devuelve: NULL
System.out.println( "request->"+req ); //la consola de java devuelve: org.apache.catalina.connector.RequestFacade@183bff 8

//aqui hacer lo que voy a hacer con el atribute del request ....

//devuelve a la pagina el mensaje
return "Hola, " + name;
}

-----------------------------------------------

NOTESE: que aqui el request es org.apache.catalina.connector.RequestFacade@183bff 8
mientras que anteriormente era de tipo org.apache.catalina.core.ApplicationHttpRequest@1f ba15d

porque sucede esto?

sera que WebContext no devuelve el objeto request original o que significa requestFacade?

Espero que me puedan ayudar, por favor...

Gracias.

Etiquetas: ajax, request
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 00:14.