myfaces-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Aleksei Valikov <>
Subject Weblets and AddResource
Date Wed, 06 Sep 2006 08:34:59 GMT

Has anyone integrated Weblets into MyFaces via the AddResource?

I'm writing my own components that rely on some js/css. Weblets seem to be a 
right thing to manage resources. Seems much easier to use and configure than 
MyFaces analogs.

At the same time I consider taking advantage of positioning resources with 
AddResource. That is, I'd like to add a script once to the header even if it's 
used 200 times in a page.

A custom AddResource implementation could adapt Weblets to manage resources.

Another problem with AddResource is AJAXified components. For instance, with 

Current implementation of (say) StreamingAddResource uses a very tricky approach 
to manage stylesheets:

1. You have to use this with t:documentHead which renders a link to 
pseudo-stylesheet. This links carries an unique id of the requst, for instance:


2. When rendering the components, they may add some stylesheets to the header. 
These are gathered in some kind of a map associated with the request id (123).

3. After the rendered html is delivered to the client, the client requests the 

4. This is intercepte by MyFaces which in its turn create a header.css with all the
@import url("my-style.css");
for styles that were added by the components.

Scripts are currently managed a bit differently, but I think this is also gonna 

In my opinion, this is rather a tricky way to shut yourself in the head.

Why not simply pre-render body in a buffer (gathering the styles/scripts for the 
header or whatever), and then happily render the head with all the gathered 
resources? A combination of document/head/body components could easily do it. 
You only need a some tens of kbs buffer to pre-render the body...

So my question before I start implementing something myself is if anyone has 
done something in this direction, are there alternative AddResource 
implementations and so on.
Are these issues adressed in JSF 1.2 somehow?


View raw message