RequestDispatcher di url in un diverso web app

Come posso utilizzare RequestDispatcher di un pianeta del nostro web app nello stesso spazio di lavoro

nel 1 ° web app io uso come

 RequestDispatcher rd =request.getRequestDispatcher("vote.jsp");
    rd.forward(request, response);

posso sostituire vote.jsp con

questo url :

http://localhost:8080/SpeedyServiceClient/JSP/Search/indexS.jsp

InformationsquelleAutor David | 2011-07-01

 

3 Replies
  1. 8

    Se si desidera inoltrare a un diverso web app nella stessa istanza di tomcat, è possibile:

    • Che “context.xml” per modificare? La deviazione da o per la? In entrambi i casi?
    • hm, mi sono dimenticato… 🙂
    • Non so se questo possa risolvere il mio problema o no, ma +1 per essere assolutamente impressionante.
    • Hai solo bisogno di aggiungere crossContext proprietà in context.xml di la ‘dal web app.
    • Se si desidera inoltrare richiesta a un’altra applicazione web, allora avete bisogno di inserire il contesto di applicazione di tale applicazione senza barra iniziale, perché Se il percorso inizia con “/” viene interpretato come relativo al contesto corrente principale. I. e.devi scrivere getServletContext().getContext("app").getRequestDispatcher("f.jsp").forward(..); dove app è il nome di un’altra applicazione.
  2. 5

    Se si sta andando su un altro server/servlet contesto, sarebbe più tipico di andare …

    response.sendRedirect("http://localhost:8080/SpeedyServiceClient/JSP/Search/indexS.jsp");
    • no non posso utilizzare questo url , cur l’url con voto accettare, Se si sta andando su un altro server/servlet contesto, sarebbe più tipico di andare … risposta.sendRedirec sarà /Percorso del 1 ° app/localhost:8080/SpeedyServiceClient/JSP/Ricerca/indexS.jsp quindi, thats non funzionano
    • Hmmm sembra che il tuo commento ha tutto incomprensibile-si può modificare così posso dare un’occhiata?
    • stackoverflow.com/questions/6553877/… vorrei eliminare questo uno sguardo alla mia domanda 2)
  3. 3

    Da ServletRequest.getRequestDispatcher() Javadoc:

    Il percorso specificato può essere relativo, anche se è non può estendersi al di fuori dell’attuale contesto servlet. Se il percorso inizia con “/” viene interpretato come relativo al contesto corrente principale. Questo metodo restituisce null se la servlet container in grado di restituire un RequestDispatcher.

    Quello che stai cercando è probabilmente un redirect (vedere HttpServletResponse.sendRedirect e Sai risposta) piuttosto che l’inoltro della richiesta. Tenete a mente, però, che questo invia una nuova posizione per il browser (visibile all’utente nella barra degli indirizzi) che consentirà di caricare una nuova pagina come se fosse digitato dall’utente.

    • sì signore sto cercando di reindirizzare come posso fare per 2 web app nello stesso spazio di lavoro ??
    • Sì è vero, e per avanti richiesta di un altro contesto, è necessario utilizzare contesto del percorso di senza barra iniziale come descritto nel mio commento sotto stackoverflow.com/a/6555794/999367

Lascia un commento