Я думаю калитка - хороший выбор. Вы можете найти пример того, как создать релакс-URL здесь . Я ничего не могу сказать о JSF, так как всегда держался в стороне от этого (по какой-то причине мне это никогда не нравилось).
Держитесь подальше от Гобелена 5, если у вас нет склонностей к самоубийству.
Я бы также предложил вам использовать JRuby или Clojure, но я думаю, что это может быть далеко.