Utilizzo di classi non progettate per più sessioni nel servlet

0

Sto cercando un modo per utilizzare una raccolta di classi Java in un servlet, che fornirebbe alcuni servizi ai client, ma le classi non sono state progettate pensando a più sessioni, il che sembra renderlo più difficile. Per essere precisi, voglio caricare un interprete di lingua (ignorando i problemi di sicurezza - sarà accessibile da localhost fino a quando non avrò capito la sicurezza), che è stato scritto supponendo che ci sia un solo utente, quindi ha un sacco di stato globale . In sostanza, sto cercando dei modi per garantire che ogni singola sessione client abbia la sua copia dello stato globale.

C'è un modo per ottenere l'effetto delle sessioni con una copia isolata dello stato globale (diciamo) lavorando con il classloader? o qualche tipo di classe contenitore? Forse il motore servlet fornisce un tale servizio? (Sto lavorando con Jetty, ma potrei passare ad un altro servlet container se ha fornito un servizio di questo tipo.)

Ogni luce su cui puoi fare questo è molto apprezzata.

    
posta Robert Dodier 10.12.2014 - 00:56
fonte

1 risposta

1

I contenitori non ti danno questa possibilità. Forse puoi scrivere del codice per utilizzare un diverso classloader per utente, ma questa non è un'attività banale e IMMO puoi fare un uso migliore del tuo tempo per refactoring di questo codice e rimozione dello stato globale. Risolvi il problema invece di cercare soluzioni alternative difficili e complesse.

    
risposta data 10.12.2014 - 01:06
fonte

Leggi altre domande sui tag