You should use <link>
tag instead of <h:outputStylesheet>
eg.
<link rel="stylesheet" type="text/css" media="all" href="webjars/bootstrap/3.1.1/css/bootstrap.min.css"/>
--- UPDATE
This happen because ResourceHandler in JSF add library value (webjars) to the end of URI as a parameter:
faces/javax.faces.resource/bootstrap/3.1.1/css/bootstrap.min.css?ln=webjars
in bootstrap.min.css CSS there are such references to files: url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),
so if you want to use <h:outputStylesheet>
you can write own ResourceHander or you can edit bootstrap.min.css
and fix paths to glyphicons-halflings-regular.*
files
In my opinion is better to use standard html tag <link>
instead of <h:outputStylesheet>
because JSF component tree will be smaller and it act on performance. Inside bootstrap.min.css
there is no EL so there is no need to use <h:outputStylesheet>