Use a client side RIA framework like jQuery or Dojo. Abandon anything Struts, tiles, JSP, or JSF related. Implement all of your services with JAX-RS and call those services from your UI with XHR request from the client app. Put all of your none dynamic HTML into a CMS that can export static files to a webserver. You do not want yet another run-time dependency (Alfresco can do this). Separating the concerns makes for a far more agile process and allows you to use a greater variety and configuration of tools and technologies.