Ho un'applicazione java, che in parole povere permette di visualizzare e modificare lo stato di alcune macchine virtuali che girano su piu' server.

Detta in parole semplici, la GUI consiste di un JTree di server e un JList di macchine virtuali. Dalla JList posso draggare macchine virtuali nel JTree cosicche' verranno attivate su uno dei server nel jtree.

Il problema e' che allo stesso tempo dai server mi arrivano degli update sullo stato delle macchine virtuali, quindi sia la JList che il Jtree (i loro modelli) vengono aggiornati. Ne consegue che se l'update avviene mentre sto draggando ottengo NullPointerExceptions, perche' gli oggetti che drag&droppo sono in realta' cambiati.

Suggerimenti? Qualche lock/semaforo sull'accesso ai modelli magari?