BalusC has an excellent tutorial on how to make this work found here.
PrimeFaces Extensions now includes these classes so you don't have to write your own or keep it up to date with every PrimeFaces release.
<application> <system-event-listener> <system-event-listener-class>org.primefaces.extensions.application.PrimeFacesScriptProcessor</system-event-listener-class> <system-event-class>javax.faces.event.PostAddToViewEvent</system-event-class> <source-class>javax.faces.component.UIViewRoot</source-class> </system-event-listener> </application> <lifecycle> <phase-listener>org.primefaces.extensions.application.PrimeFacesResourceProcessor</phase-listener> </lifecycle>
<render-kit> <renderer> <component-family>javax.faces.Output</component-family> <renderer-type>javax.faces.Head</renderer-type> <renderer-class>com.sun.faces.renderkit.html_basic.HeadRenderer</renderer-class> </renderer> </render-kit>
<render-kit> <renderer> <component-family>javax.faces.Output</component-family> <renderer-type>javax.faces.Head</renderer-type> <renderer-class>org.apache.myfaces.renderkit.html.HtmlHeadRenderer</renderer-class> </renderer> </render-kit>