My understanding is that strictly speaking, the term "relocatable resource" refers to the fact that you can include a resource reference in one place on the page (say, the body) and specify another location for it, like the head, using the target attribute. This is described in Section 18.104.22.168 of the JSF 2.1 spec.
The section http://download.oracle.com/javaee/6/tutorial/doc/bnarf.html#gjgep discusses this subject, including specifying the target as "#
" to make the resource dynamically relocatable.
Packaging resources into libraries does need further documentation beyond what is in http://download.oracle.com/javaee/6/tutorial/doc/girgm.html, but that's not the same thing as relocatable resources. Should the issue be retitled, say to "Packaging resource libraries isn't documented ...."?
Another issue: I have trouble getting this syntax to work:
According to the spec, you have to say
However, neither seems to work, at least for stylesheets. With both, the generated HTML has
<link type="text/css" rel="stylesheet" href="RES_NOT_FOUND" />
The server has the following warning for both:
WARNING: JSF1091: No mime type could be found for file /guessnumber/faces/javax.faces.resource/default.css?ln=css. To resolve this, add a mime-type mapping to the applications web.xml.
The library/name attributes work fine, though:
<h:outputStylesheet library="css" name="local.css" />