Quindi, il mio modello include un footer.xhtmlCome includere condizionatamente un file nel mio modello usando JSF e Facelets?
<ui:include src="/WEB-INF/testtaker/Footer.xhtml"/>
Quello che voglio fare è di cambiare il piè di pagina sulla base di alcuni utenti pref a diverso piè di pagina _ ???. File XHTML.
Quindi, mi piacerebbe fare qualcosa di simile:
<ui:include src="/WEB-INF/testtaker/Footer_001.xhtml">
Content from original Footer.xhtml
</ui:include>
e se Footer_001.xhtml non esiste, allora lascio l'utilizzo dei contenuti tra i tag, altrimenti utilizzare il contenuto del file .
So che questo sembra un po 'strano, ma questo risolverà un enorme problema di personalizzazione del mio sito esistente senza dover apportare modifiche a tutto il luogo. Inoltre non sono sicuro che il file esisterà prima o poi.
Qualche idea?
Ah, sì. Sto pensando di fare qualcosa del genere. Ma il problema arriva quando lo src si risolve in qualcosa come Footer_001.xhtml e quel file non esiste (ancora) quindi voglio includere il contenuto "predefinito" di Footer.xhtml. Ha senso? :) –
Perché dovresti avere un ID del footer non valido in primo luogo? Questo è un input controllato al 100%? (in tal caso, sei a conoscenza dei vettori di attacco in questo caso?) Perché non fornire semplicemente all'utente finale un dropdown con gli ID di footer disponibili? Ad ogni modo, è possibile controllare il costruttore di prefs o il metodo getter se esiste il footer. Puoi farlo controllando se 'ExternalContext # getResource()' restituisce 'null' o no. Se non esiste, restituisce invece 'null'. – BalusC
Grazie. Ha funzionato alla grande So che è un po 'strano cercare di includere un file che non esiste ma abbiamo dei requisiti stupidi. Ad ogni modo, il tuo suggerimento ci porta verso la soluzione giusta. Grazie! –