Ciclo di vita di una Tag Library
Luca | May 21, 2005Creando una custom tag library ho scoperto che il ciclo di vita delle tl è assolutamente diverso da quello che mi aspettavo. L’idea che avevo è che ad ogni apertura/chiusura del tag sulla jsp corrispondesse un’istanza nuova della tl; questo, effettivamente, poteva corrispondere all’istanza di un alto numero di oggetti (pensiamo ad una tag che crea righe di una tabella HTML), ma riponevo grande fiducia nel garbage collector che facesse il suo sporco lavoro ed io potessi fare finta che il problmema non esistesse!!! (aahh..la pigrizia…).
Sviluppando invece un tag custom, ho visto che mi sbagliavo: il tag ha un ciclo di vita molto più lungo, e mantiene le proprie proprietà all’interno di tutta la pagina in cui è usato (in pratica l’istanza è sempre quella !!).
Sfogliando la javadoc ho trovato risposta alla mia domanda con questo diagramma degli stati:

Mi rimane ancora da capire quando esattamente viene invocato il metodo release() che si occupa di rilasciare la tl….ho fatto qualche prova, ma non ho mai visto invocato il metodo; teoricamente al termine dell’elaborazioen della JSP, però mi piacerebbe averne una conferma…





