Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    STRUTS2+Popup+Action Java = AIUTO!

    Illustro brevemente il mio problema.
    Ho un sito in cui la maggior parte delle finestre che devo gestire sono finestre Popup che mi si aprono in seguito ai vari click sul menù principale,sovrapponendosi alla home che rimane sotto(insomma normali popup).

    Io sto usando struts2 e il passaggio dei parametri alle varie pagine JSP (pagine normali cioè non popup) lo faccio semplicemte tramite delle action(Java) che nella execute() mi ritornano il valore "success". Nel file struts.xml acchiappo questo valore ritornato e lo gestisco tramite la sintassi

    <result name="success" > /pagina1.jsp </result>

    Il problema è che in questo modo riesco solo a gestire le pagine normali, e non riesco a gestire le finestre popup. Cioè c'è un modo con struts 2 per riuscire a passare i valori restituiti da una action e buttarli dentro una finestra popup??

    Una sintassi del genere è possibile in strut2??
    <result name="success" > window.open(popup.jsp) </result> ????

    P.S. fin'ora le mie finestre popup le aprivo tramite javascript window.open(popup.jsp) ma ovviamente non sono riuscito a passargli valori dinamici restituiti dalla classe java.

    Oppure una soluzione sarebbe quella di aprire la popup(staticamente) e poi da qui accedere alla classe java per prelevarne i dati?? e come faccio??

    Spero di essere stato chiaro.

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466

    Moderazione

    Come già detto in questa occasione, c'è una sezione specifica per Java.

    Ho spostato la discussione e modificato il titolo per renderlo più significativo, ma provvedi tu a entrambe le cose in futuro.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    prova cosi':

    javascript window.open(tua_action.action?params);

    dovrebbe funzionare.
    La vita sarebbe piu' facile se avessi il codice sorgente!

  4. #4
    Cioè scusa potresti essere piu preciso?

    Una volta che ho aperto la mia popup (tramite window.open("popup.jsp")) inserisco nel codice della mia finestra popup

    javascript window.open(classe.java?params);

    al posto di param che ci devo mettere???
    Grazie mille

  5. #5
    una cosa del genere <result name="success" > window.open(popup.jsp) </result>
    non penso si possa fare.

    pero' se tu chiami la tua action nel window.open, funziona esattamente come le pagine non in popup.
    La vita sarebbe piu' facile se avessi il codice sorgente!

  6. #6
    Scusami se sono "duro" di comprendonio.

    La mia action la devo chiamare nella window.open che utilizzavo per aprire la mia pagina popup tramite una sintassi del tipo:

    window.open("popup.jsp",width="300",height="200", action="classeActionMia.java");


    oppure prima richiamo la mia finestra popup tramite

    window.open("popup.jsp",width="300",height="200")

    e nel codice della popup jsp introduco queste righe di codice:

    <script language="javascript" >

    window.open(action="classeActionMia.java")

    </script>


    Mi dai illuminazione con la sintassi precisa???grazie

  7. #7
    io lo farei cosi':

    struts.xml:
    codice:
    ...
    ...
    <action name="actiondaaprireinpopup" class="tuo.package.TuaAction">
      <result>/jsp/tuajsp.jsp</result>
    </action>
    ...
    ...
    a questo punto per aprire il popup fai una cosa del genere:

    codice:
    javascript window.open("actiondaaprireinpopup.action?parametro1=1&parametro2=2&...",width="300",height="200");
    facendo questo passi i parametro1 e il parametro2 alla action: tuo.package.TuaAction,
    se tutto va bene nella action, quindi di risponde con success, nel popup verra' aperta la jsp: tuajsp.jsp

    spero di essere stato chiaro.
    La vita sarebbe piu' facile se avessi il codice sorgente!

  8. #8
    Boh...forse sono scemo io..ma la tua soluzione proprio non riesco a capirla.

    La riga di codice
    codice:
    javascript window.open("actiondaaprireinpopup.action?parametro1=1&parametro2=2&...",width="300",height="200");
    dove dovrei scriverla???
    nel file struts.xml??? oppure nella jsp della mia popup??

    Da come ne parli te sembra che con la window.open riesco ad "aprire " una classe java??? com'è possibile sta cosa?!
    tramite la window.open posso aprire pagine jsp oppure html ma non classi java?!

    Boh...forse sono scemo io.....

  9. #9
    probabilemente non ci siamo capiti, anche se mi sembrava di aver spiegato la cosa in maniera abbastanza chiara.

    in ogni caso, tu hai scritto:
    Io sto usando struts2 e il passaggio dei parametri alle varie pagine JSP (pagine normali cioè non popup) lo faccio semplicemte tramite delle action(Java) che nella execute() mi ritornano il valore "success". Nel file struts.xml acchiappo questo valore ritornato e lo gestisco tramite la sintassi

    <result name="success" > /pagina1.jsp </result>
    alle pagine che tu chiami "normali" come ci arrivi?

    Da come ne parli te sembra che con la window.open riesco ad "aprire " una classe java??? com'è possibile sta cosa?!
    e' ovvio che una window.open non possa "aprire" delle classi java...

    il javascript window.open("actiondaaprireinpopup.action?parametr o1=1&parametro2=2&...",width="300",height="200");

    lo metti nella jsp dalla quale vuoi aprire il popup.
    La vita sarebbe piu' facile se avessi il codice sorgente!

  10. #10
    Anzitutto grazie per il tempo che stai perdendo dietro a questa mia questione.
    Spiego meglio la cosa.

    Ho un file menu.jsp da cui apro diverse pagine tramite una sintassi del genere:
    codice:
    <a href = "<s:url action="action1"/>">       <A href = "<s:url action="action2"/>">
    Ognuna di queste action viene mappata dal file struts.xml su una specifica classe la quale terminata in maniera corretta restituisce un "success":

    <action name="action1" class="action.classe1">
    <result name="success" > /paginaNormale.jsp</result>
    </action>

    Il success viene intercettato dallo struts.xml che spara i risultati su una pagina jsp(normale).

    Io invece voglio che i risultati mi vengano sparati su una popup.

    Quindi se ho capito bene io nel mio file menu.jsp anzichè
    "<s:url action="action1"/>">

    dovrei scrivere:

    window.open("action1.action?parametro1=1&parametro 2=2&...",width="300",height="200"); ??

    In questo modo struts capisce di avviare la action..eseguirla e restituirne i risultati in una popup???

    Dovrei quindi aggiungere anche la riga

    <result name="success" > /paginapopup.jsp</result>
    nello struts.xml??

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.