Having PrimeFaces, ButterFaces and OmniFaces along with BootsFaces on the showcase clutters the classpath and we run the risk of some of those libraries changing some behavior without our knowledge.
I propose to separate the showcase into 3 different wars, deployed on the following context roots:
- /showcase: bootsfaces+omnifaces
- /showcase/primefaces: bsf+of+primefaces
- /showcase/butterfaces: bsf+of+butterfaces
I think we can remain using OmniFaces as it is a must for every new JSF application anyway. It solves some problems and I think we should even recomend to use it.
I think Maven can be instructed to output different artifacts from just one compilation like if it was an EAR.