O tópico já é antigo, mas antes de abrir outro vou tentar aqui 
Quanto a salvar alterações e ter que reiniciar o tomcat eu acho ser normal.
A minha estratégia é ir alterando os arquivos sem salvar… daí antes de salvar eu baixo o tomcat, salvo, e subo de novo.
Dessa forma, normalmente só preciso subir o tomcat uma vez a cada alteração que quero testar.
Porém, estou tendo um problema aqui (Eclipse Helios, Tomcat 7, JSF 2 + Primefaces):
Eu faço alterações no código e as mesmas não são publicadas no tomcat… Mesmo utilizando o “publish”.
Por exemplo… Se tenho uma String inicializada com o valor “valor” e altero para “outro valor”, ao reiniciar o tomcat ela continua com “valor”…
O eclipse está com build automático… mas só consigo resolver isso dando um clean no projeto.
Alguem ja passou por isso? Alguma solução?