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

problema con url y struts

Estas en el tema de problema con url y struts en el foro de Java en Foros del Web. Hola, tengo un problema con una url y struts que no sé como resolver. Lo que quiero es, en una jsp, que me abra una ...
  #1 (permalink)  
Antiguo 13/06/2011, 09:05
 
Fecha de Ingreso: diciembre-2008
Mensajes: 233
Antigüedad: 15 años, 4 meses
Puntos: 1
problema con url y struts

Hola, tengo un problema con una url y struts que no sé como resolver. Lo que quiero es, en una jsp, que me abra una ventana con otra jsp, y en esa segunda jsp, rellene unos datos y me vaya a un método en particular de un action. Pero no consigo que me vaya a ese método del action, como mucho me vá al execute. Además si le pongo el método en la url me dice que no encuentra el action o el input asociado.

La llamada al action es la siguiente:

Código:
url = '<s:url  action="NewArrivalFlightOptions" method="fundirVueloLlegada" namespace="/realTime/arrivalFlight"/>' ;
							var parteMala =url.split("?")[1];
							url = url.replace(parteMala, 'idArrivalFlight=9392');
							window.opener.document.location.href=url;
donde le cambio el namespace porque es distinto del de la jsp, y "parteMala" son una serie de parámetros que quiero eliminar. El resultado es el siguiente, visto desde un alert:

/AODB2/realTime/arrivalFlight/NewArrivalFlightOptions!fundirVueloLlegada.action? idArrivalFlight=9392;

Y sin embargo, me dice que no hay acción mapeada así. Y en mi xml tengo:

Código:
...
<action name="NewArrivalFlightOptions"  class="es.indra.aodb.realtime.web.action.arrivalFlight.NewArrivalFlightOptionsAction" method="fundirVueloLlegada">
            <result name="SUCCESS">/jsp/common/_loadJsonErrors.jsp</result>
			<result name="ERROR">/jsp/common/_loadJsonErrors.jsp</result>
			<result name="INPUT">/jsp/common/_loadJsonErrors.jsp</result>
            <result name="loginError">/jsp/application/notLogged.jsp</result>            
        </action>
...
En otra jsp me sucedía lo mismo en una llamada ajax, y lo solucioné utilizando la etiqueta <s:url> de la siguiente manera:

Código:
...
url: '<s:url value="NewArrivalFlightOptions.action" method="fundirVueloLlegada" />
...
pero aquí no hay manera.

Lo único que se me ha ocurrido (teniendo en cuenta que tengo un validate que sólo quiero que valide el execute()), es crear una variable string, y dependiendo de su valor, que no pase por el validate, y en el execute llame al método fundirVueloLlegada() del action, pero no me parece una buena solución, unas "buenas prácticas", tendría que conseguir que llamara al método correcto directamente. Agradecería que alguien me echara una mano.

Muchas gracias, un saludo
  #2 (permalink)  
Antiguo 13/06/2011, 10:00
 
Fecha de Ingreso: diciembre-2008
Mensajes: 233
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: problema con url y struts

Hola, ahora incluso no me funcionaba lo que antes sí lo hacía, es decir, en las llamadas Ajax tampoco me funciona:

Código:
url: '<s:url value="NewArrivalFlightOptions.action" method="operarVueloLlegada" />?idArrivalFlight='+idSel+
							   				'&selectedPage=' + paginaSeleccionada,
o bien

Código:
url: '<s:url action="NewArrivalFlightOptionsJoin" />?idArrivalFlight='+idSel+
										   			'&selectedPage=' + paginaSeleccionada + '&desfundir=fundido',
no lo entiendo, la llamada es correcta, ¿no? y el xml es el siguiente:

Código:
...
<action name="NewArrivalFlightOptionsJoin"  class="es.indra.aodb.realtime.web.action.arrivalFlight.NewArrivalFlightOptionsAction" method="fundirVueloLlegada">
            <result name="SUCCESS">/jsp/common/_loadJsonErrors.jsp</result>
			<result name="ERROR">/jsp/common/_loadJsonErrors.jsp</result>
            <result name="loginError">/jsp/application/notLogged.jsp</result>            
        </action>
        <action name="NewArrivalFlightOptions"  class="es.indra.aodb.realtime.web.action.arrivalFlight.NewArrivalFlightOptionsAction" method="operarVueloLlegada">
            <result name="SUCCESS">/jsp/common/_loadJsonErrors.jsp</result>
			<result name="ERROR">/jsp/common/_loadJsonErrors.jsp</result>
            <result name="loginError">/jsp/application/notLogged.jsp</result>            
        </action>
...
¿Puede alguien decirme qué estoy haciendo mal, porqué no pasa por el método adecuado? Sigue llengo primero al validate y después al execute().
Muchas gracias

Etiquetas: javascript, struts, url
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 06:28.