Frank W. Zammetti wrote:
>
> String var =
> (String)FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("variableName");
> 
A yes the lovely Request Factory->context...-> cascade....

I personally always use either ioc for managed beans
or some utils classes (there is a very good one I found
on javaworld, written by Derek Chen)

with Derek Chens JSF Utils class it is like that:
JSFUtils.getRequestParameter("variableName")

Why the JSF specificators did not have thought of convenience classes
like that in the first place is beyound me, because all the
infrastructure you need is in place.

In my opinion the request singleton itself via the FacesContext is one
of the nicest things in JSF structurewise, because it eases you of the
burden of having either a parent class or parameters which are
infrastructure related, all you need is a pojo. All which is missing is
some helper class which simplifies things, and not having that specified
in the first place is something which still is beyound me.

And yes JSF makes many things simpler, by providing additional
infrastructure, high level components but some areas are messy, here is
a short list:

a) The whole FacesContext singleton is badly in need for a convenience
util class

b) The lifecycle handling is a tad to complicated, adressed by the Shale
viewhandlers in an excellent way

c) The whole datamodel API is unfortunatly a tad to generic which makes
the implementation of custom datamodels too complicated for my personal
taste

d) There is no real scoping beyound, session, request and application
(This issue has been addressed now, by shale, saveState in myFaces
tomahwak, Seam and probably other frameworks or extensions)

e) No easy client side component creation out of the box, this isse has
been adressed so far now by, Shale Clay, Facelets, Tomahwak aliasbeans
und to a certain degree by Tapestry which also has bindings into JSF.

The rest are documentation issues, like it definitely needs a good
tutorial book on the web, which goes way beyound the usual hello world
examples.

Good points:
The component infrastructure really has become huge in the last year
with hundreds of components available for free (one thing which yet
still has to be more propagated)

Some of this stuff saves a lot of time, the components are one, the
validation conversion handling also, the IOC infrasctructure also helps
to keep the code clean and saves time.
The event system simply is excellent.

Once you move beyound the RI, you can find lots of stuff which adresses
serious issues, scoping, componentization, client side validation,
high level components, removal of config entries by pushing the stuff
into the domains of annotations (shale Tiger extensions come to mind,
also Seam, which outright is excellent)

So is it perfect, hell no, it has flaws, but it is definitely a huge
move forward,but not due to the fact that there is a RI which most
people dismiss as probably all there is in JSF, but due to the fact
lots of people have added lots of extra value in a short period of time.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to