Ovviamente ResourceBundle
richiede un file di proprietà come la sintassi nei file che trova."ResourceBundle" per interi file?
Abbiamo una situazione in cui vogliamo utilizzare interi file (nel nostro caso file HTML) come "valori". Ciò significa che non abbiamo le chiavi in quanto tali. Bene, forse il nomefile funzionerebbe come chiave.
Ecco un albero di directory:
src/
main/
resources/
html/
content.html
content_de.html
content_fr.html
content_es.html
order.html
order_de.html
order_fr.html
order_es.html
Ora abbiamo bisogno logica per trovare il file corretto in base alla localizzazione corrente. Se il locale corrente è tedesco e sto cercando il file html/content.html
, dovrebbe trovare html/content_de.html
. Non ha necessariamente bisogno di caricarlo subito. Esiste qualche meccanismo esistente in Java? Dobbiamo farlo manualmente?
A causa di alcune restrizioni, al momento stiamo pianificando di non utilizzare alcuna libreria di terze parti. Quindi, se c'è qualcosa di disponibile in Java 6 SE, sarebbe la nostra scelta migliore; tuttavia, se conosci una libreria di terze parti, non esitare a nominarla.
EDIT # 1: Una soluzione ovvia sarebbe avere una chiave in messages.properties
per denominare il file HTML. Mentre funzionerebbe potrebbe diventare un rompicapo a lungo andare (e inoltre non credo che questo risolverebbe tutti i nostri problemi con questo).
EDIT # 2: Ho dimenticato di dire che questa è un'applicazione desktop.
Potrebbe prendere in considerazione un approccio basato su filtro: un avvio rapido è qui: http://www.servletsuite.com/servlets/i18nflt.htm – Jayan
@Jayan Ho dimenticato di dire che ho bisogno di questo per un'applicazione desktop, lo farò modifica la domanda. Tuttavia, grazie per averlo menzionato, forse è utile a qualcuno. – sjngm
Si potrebbe prendere in considerazione l'utilizzo di Velocity o di un altro motore di template (quelli non sono limitati alle applicazioni Web) –