Includere file statici in JSP con la variabile nome del file su WebSphere 6
-
04-10-2019 - |
Domanda
Sto lottando con incluso un file statico nelle mie JSP su Websphere 6.0.2.17 . Ho provato questo:
<% final String MY_DIR = ResourceBundle.getBundle("mybundle").getString("props.pages.wcm"); %>
<% final String page = ResourceBundle.getBundle("mybundle").getString("page"); %>
<% final String inc = MY_DIR + "/" + bonus; %>
<%@include file="<%= inc %>"%>
Il percorso è / WCM / some / altro / dir / pagina e posso tranquillamente stampare che con out.write(inc)
. Purtroppo il include
(e la jsp:include
) non sta comprendendo il file a tutti. Non v'è alcun messaggio di errore, ma il contenuto non è incluso ... Il file è accessibile tramite il browser però.
Devo creare una JSP pieno per questo al lavoro? Ho solo bisogno di un file HTML.
Aggiorna
Perché ci saranno più pagine da includere prima o poi deciso di creare un taglib personalizzato per questo caso. In questo modo posso capsulati la funzionalità e impostare la directory di base per il mio contenuto statico in un file di proprietà.
Soluzione
Provare a utilizzare RequestDispatcher.include ():
<%
RequestDispatcher r = request.getRequestDispatcher(inc);
r.include(request, response);
%>
Questo è proprio come la direttiva include, ad eccezione di qualunque pagina che state includendo saranno trattati ogni volta (se si tratta di un JSP o servlet). La direttiva include elabora un'unica pagina, una volta quando il file JSP che risiede direttiva in viene compilato.
Altri suggerimenti
ho cercato attraverso jsp:include
e il file ottenuto inclusi perfettamente.
Tenete a mente che è necessario fornire il percorso relativo e non il percorso assoluto.