Come stavi facendo, con UNA variabile (che oltretutto come ho detto prima è in UNA sola istanza della servlet) proprio NO. Se avessi 2, 3, 4 ecc... utenti che stanno gestendo contatti con Id differenti? Dove li tieni questi Id?
Una possibilità sarebbe tenere il Id nella sessione. La sessione è "per client". Ma non è comunque perfetta/ottimale come soluzione. L'utente potrebbe fare il furbo e tenersi 2 schede del browser aperte che condividono la stessa sessione e in una gestire un contatto con un certo Id e nell'altra scheda tentare di gestire un altro contatto. Avresti lo STESSO problema.
La soluzione pulita e corretta è davvero semplice: il doPost riceve il contactId insieme agli altri parametri, che dovrà ovviamente essere inviato dal updateContact.jsp.
Tutto qui.