esatto, a struts non interessa dove inviare i dati...
lui li manda attraverso la jsp se poi tu hai aperto un popup li visualizzarai in un popup.
quindi nel menu' sul click del link metti il window.open(....).
dovrebbe funzionare
esatto, a struts non interessa dove inviare i dati...
lui li manda attraverso la jsp se poi tu hai aperto un popup li visualizzarai in un popup.
quindi nel menu' sul click del link metti il window.open(....).
dovrebbe funzionare
La vita sarebbe piu' facile se avessi il codice sorgente!
Niente...nulla da fare! Ho inserito il codice come mi hai detto nel mio menu.jsp
window.open('action1.action',width=xx, heigth=yy)
Qualcosa di buono succede: la action mi viene intercettata da struts.xml e mi viena avviata la classe java la quale restituisce una success.
Il problema è ke i risultati non vengono sparati su una popup bensì su una nuova"scheda" del browser (io uso firefox).
In pratica è come se i parametri relativi alle dimensioni della popup neanche li guardasse..
Dove sbaglio??
beh, il fatto che ti apra una nuova scheda su FF non dipende sicuramente da java/struts,
personalmente js lo uso solo per validare i dati dei form o poco piu', quindi non saprei come aiutarti, se fossi in te cercherei qualcosa su internet, oppure nel forum dedicato a javascript o aprirei una discussione sicuramente li' sanno come aiutarti.
mi spiace.![]()
La vita sarebbe piu' facile se avessi il codice sorgente!
RISOLTO..!!
Ho appena risolto GRAZIE A TE il mio problema!!
Il fatto che ieri mi aprisse la pagina in una nuova scheda(e non in una popup) dipendeva da un errore nella sintassi.
Quindi confermo che è possibile con struts2 sparare i risultati di una action su una finestra popup.
Ti giuro che ho perlustrato una marea di guide e forum da ieri pomeriggio e nessuno pareva che avesse mai fatto una cosa del genere! Ricapitolando scrivo come ho fatto in modo che possa essere utile a qlkun'altro!
file menu.jsp :
E sempre nel solito file menu.jsp aggiungo anche la funzione javascript per l'apertura della popup:codice:<td><A href = "#" onclick="apriPopup('action1.action?','finestraPopup.jsp','width=500, height=275')"> <s:text name="voce del menu" /> </A></td>
Successivamente nel file struts.xml inserisco il codice per la gestione della action:codice:<script type="text/javascript"> function apriPopup(azione,pagina,stile) { win = window.open(azione,pagina,stile); win.focus(); win.moveTo("500","150"); //mi sposta la popup in questa posizione } </script>
Tutto gira alla perfezione. Cliccando sulla voce del menù mi parte il codice java associato alla action il quale restituendo la stringa "success" mi spara i risultati sulla finestrella popup di dimensioni 500x275.codice:<action name="action1" class="action.Prova"> <result name="success" >/finestraPopup.jsp</result> </action>
GRAZIE MILLE, senza di te non ce l'avrei fatta davvero!
figurati, e' stato un piacere.
Ciao![]()
La vita sarebbe piu' facile se avessi il codice sorgente!
CAVOLO....! HO PARLATO TROPPO PRESTO!!!
La soluzione trovata funziona con firefox, ma ho provato con I explorer 8 e ci sono rimasto male.
Non apre nulla...cliccando sul menù e sulla barra di stato in basso mi ci viene scritto errore nella visualizzazione della pagina!
Forse è solo un problema di sintassi???
Puoi darmi qlk altro consiglio ??
Grazie ancora...cavolo..pensavo di aver risolto..
Salve risolto il problema qlk giorno fa anke per IE adesso ho un altro piccolo intoppo.
Una volta riempiti i campi del form presente nella mia popup e premuto il tasto di submit vorrei che la popup sparisse e i risultati prodotti dalla action fossero "buttati " sulla pagina principale (diciamo la madre che ha generato la popup). e' possibile??
In pratica io sul codice della mia popup.jsp ho inserito i comandi:
Dove la funzione javascript è la seguente:codice:<s:form action="action1" onsubmit="funzione()" />
Cioè in pratica prima di chiudere la popup provo a togliergli il fuoco che automaticamente se lo dovrebbe riprendere la pagina madre che c'è sotto..e una volta eseguita la action in teoria i dati me li dovrebbe riversare sulla pagina principale ma ovviamente non mi funziona.codice:window.blur(); window.close();
Cioè in pratica ho bisogno che i risultati non finiscano su una popup ma su una pagina "normale". con strut2 come si fa??