Come posso accedere alla radice di una guerra?
Domanda
ho bisogno per determinare se un'immagine esiste in un tag JSP in modo da poter visualizzare un default se non esiste. Qual è il modo migliore per accedere alla radice guerra in modo che posso controllare per vedere se esiste l'immagine? O c'è una soluzione migliore?
Soluzione
Il metodo ServletContext
getResource può essere utilizzato per funzioni come questo. Se la risorsa (l'immagine) non esiste, questo metodo restituisce null
. In tal caso, un'immagine predefinita può essere visualizzata.
Si noti che l'URL questo metodo restituisce è non l'URL da utilizzare come l'attributo "src" di un tag <img>
. E 'più probabile un file:
o jar:
URL di protocollo che non avrebbe senso su un altro host. In questa applicazione, la sua testato solo per vedere se è null
, e in realtà non dal JSP.
Altri suggerimenti
Si noti inoltre non v'è alcuna garanzia che il contenitore web è esploso il file WAR, così si dovrebbe evitare di sbirciare al file system.
sarebbe un'opzione per generare l'elenco delle immagini disponibili in fase di distribuzione?