Arquitetura sistema

Tenho uma proposta de sistema para desenvolver. Este sistema deve rodar nas nuvens no formato Multi tenacy, oferecer a opção de adquiri-lo em um, ou mais módulos é fornecer uma API publica para integração com outros sistemas. Pretendo usar banco de dados relacional (MySQL) com Hibernate e JPA para o mapeamento. Porém neste cenário é melhor usar JSF e componentes como o primefaces, ou usar Spring MVC e usar outros recursos na parte visual?

Depende da experiencia da sua equipe. Se não sabem muito HTML/JS, JSF costuma ser uma fuga, mas particularmente não recomendo. Assim como Hibernate é uma fuga pra quem não sabe SQL.