Ho sviluppato un'applicazione Restlet. Vorrei restituire un file JSP su una richiesta URL tramite Restlet. Come posso ottenere questo risultato senza utilizzare un reindirizzamento?Configura Restlet per restituire JSP su Google App Engine?
cioè Diciamo che ho il file "contact.jsp" su mydomain.com e voglio che le persone a essere in grado di accedere a contact.jsp http://mydomain.com/contact
Così, in Restlet, avrei:
router.attach("/contact", MyResource.class);
Ma come posso restituire la pagina "contact.jsp"? So che un reindirizzamento funzionerebbe, ma non voglio che gli utenti vedano il ".jsp" in "http://mydomain.com/contact.jsp" ... o c'è un'altra strategia che funzionerebbe senza nemmeno usare il restlet? Forse qualche modifica del mio file web.xml?
Edit (2009-08-14):
La mia risposta pubblicato qui di seguito non funziona su App-Engine e Restlet. Funziona comunque, se non includo Restlet, o consenti a Restlet di avere un modello URL di "/ *"
Ciò che sarebbe l'ideale è avere una sottoclasse del Router che mi permetta di fare questo:
router.attach("/contact", "/contact.jsp");
Grazie!
Edit (2009-08-17):
Sono sorpreso che non ho avuto alcuna risposta da quando ho postato una taglia. Qualcuno potrebbe commentare e farmi sapere se la mia domanda/problema non è chiara?
Edit (2009-08-17):
Interessante osservazione. Quando si utilizza il metodo descritto da "Rich Seller" di seguito, funziona quando è distribuito su Google App-Engine e non localmente. Inoltre, se chiamo http://mydomain.com/contact.jsp su Google App-Engine ignora il Restlet e passa direttamente al JSP. Ma, localmente, la Restlet prende il sopravvento. Cioè, http://localhost:8080/contact.jsp non va al JSP e va a Restlet. Le applicazioni di app-engine distribuite rispondono in modo diverso agli URL come controparte locale?
Ciao Gmu! Anche io sto affrontando lo stesso problema, puoi spiegare "Questo è il modo migliore per farlo mappando i tuoi restlets su un rootpath" un po 'di più? – mabicha