I'm really pissed when I'm developing UI and have to redeploy the whole application to see my changes which can take up to a minute. Most of the time when starting up is spent in starting up the service and dao layer(=hibernate). I already have the application divided into multiple modules and the UI code is one separate module. All of the modules are packaged inside war and deployed on Tomcat. The software uses Spring for IOC. The code in the UI layer uses Spring MVC and more recently Vaadin. Maven is used to build the projet.
Is there any tips to speed things up when changing code in the UI layer? Like is there a way to redeploy only one jar? I've read about OSGI and EJB that could help with this? Would you recommend using one of those or is there other solutions? I've no problems using a real application server like glassfish or jboss. The end result doesn't have to be a war-file either.
EDIT: I'm trying to get rid of JSP so replacing JSP files on server is not enough anymore. Vaadin is plain Java code. Even in Spring MVC the controllers are Java code.