<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#ffffff">
I prefer to not only define page abstraction but go further from
html-oriented component set to functional one, that should include
layouts, layout managers and controls that would give a life to
original pluggable renderkit idea. We have already done one step in
that direction with behaviors that use user interface events
abstractions. <br>
For example, richfaces 'page' component does not define head/body but
operates with logical parts such as 'header' 'footer' 'sidebar'. How
these parts are rendered is up to current renderer or 'theme'. <br>
<br>
Growing market of special devices, such as iPhone, Android or even
ebook readers, makes necessity of special render kits more actual.<br>
<br>
On 10/15/2009 10:00 AM, Dan Allen wrote:
<blockquote
cite="mid:19758da0910151000s111b4c8s7102133b4c87a05d@mail.gmail.com"
type="cite">Oh, and I almost forgot. We definitely need to abstract
the idea of a document so that we can get away from the <html>
tag in the main template. Presumably the document tag would fall into a
new namespace set that deals with structure (rather than HTML
specifically).<br>
<br>
Roughly:<br>
<br>
<s:document><br>
<s:head><br>
</s:head><br>
<s:body><br>
</s:body><br>
</s:document><br>
<br>
I didn't put a ton of thought into that. I know Andy has gone deeper.
Toss.<br>
<br>
As for Martin's point about layout, again, looking at what Android has
done with <LinearLayout> and <RelativeLayout> could be an
interesting trail to follow.<br>
<br>
-Dan<br>
<br>
<div class="gmail_quote">On Thu, Oct 15, 2009 at 12:53 PM, Dan Allen <span
dir="ltr"><<a moz-do-not-send="true"
href="mailto:dan.j.allen@gmail.com">dan.j.allen@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">When
Andy and I spoke last week, we seemed to be in agreement about the goal
of this expanded set of components, which I will restate here.<br>
<br>
To recap, the existing components set--specifically the form
elements--are roughly a 1-to-1 mapping with HTML. But by no means is
HTML a comprehensive set of core components. The way I see it is if you
were to take ~100 applications (web, Oracle Forms, mobile, paper, etc)
and try to find the components that show up a majority of the time,
excluding "rich" components like trees and menus, that should be your
core set of components. The reason I exclude the rich components is
because they have way too many configuration options to have a good
standard...they end up getting replaced anyway (feel free to argue
otherwise). The standard set should be expanded primarily in the area
of form inputs. But I can also see the defense for better table support
since it is of equal importance in web apps.<br>
<br>
A perfect example of a missing component is a date input. Dates are
universal. You can guarantee that you are going to need one somewhere
in your app. Yet, it is missing from the core component set. You have
to take the lame and insufficient approach of using a converter with an
h:inputText. Of course, you will eventually want to style or even
replace the date input with some fancy version from ADF Faces,
RichFaces or ICEFaces. But the point is, you can at least get the
application going with the core component set. Thje developer is hooked
at that point.<br>
<br>
Just to give you a feel for other types of components that might be
warranted, pick up an Android device or iPhone and flip through a
couple of apps. You'll notice some core components that you just expect
to be there but don't map with our "traditional" view of inputs,
painted in our minds by HTML. Inputs like phone number, date, time,
color, file upload. So let's work to cover the "lame if absent" cases
and then we can debate the cases that are on the fence.<br>
<br>
-Dan
<div>
<div class="h5"><br>
<br>
<div class="gmail_quote">On Wed, Oct 14, 2009 at 4:33 PM, Jim
Driscoll <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:Jim.Driscoll@sun.com" target="_blank">Jim.Driscoll@sun.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote"
style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Andy had mentioned that there was interest in adding a few components
for JSF 2.next. And our audience mentioned that as well.<br>
<br>
I thought it would be an interesting exercise to try to gather up a
list of what kinds of components already existed as either existing JSF
or JavaScript widgets, and I went a little overboard - but hopefully
you'll find it useful as something to stimulate thought on the topic.<br>
<br>
<a moz-do-not-send="true"
href="http://weblogs.java.net/blog/driscoll/archive/2009/10/14/almost-comprehensive-list-components"
target="_blank">http://weblogs.java.net/blog/driscoll/archive/2009/10/14/almost-comprehensive-list-components</a><br>
<font color="#888888">
<br>
Jim<br>
</font></blockquote>
</div>
<br>
<br clear="all">
<br>
</div>
</div>
<font color="#888888">-- <br>
Dan Allen<br>
Senior Software Engineer, Red Hat | Author of Seam in Action<br>
Registered Linux User #231597<br>
<br>
<a moz-do-not-send="true" href="http://mojavelinux.com"
target="_blank">http://mojavelinux.com</a><br>
<a moz-do-not-send="true" href="http://mojavelinux.com/seaminaction"
target="_blank">http://mojavelinux.com/seaminaction</a><br>
<a moz-do-not-send="true"
href="http://www.google.com/profiles/dan.j.allen" target="_blank">http://www.google.com/profiles/dan.j.allen</a><br>
</font></blockquote>
</div>
<br>
<br clear="all">
<br>
-- <br>
Dan Allen<br>
Senior Software Engineer, Red Hat | Author of Seam in Action<br>
Registered Linux User #231597<br>
<br>
<a moz-do-not-send="true" href="http://mojavelinux.com">http://mojavelinux.com</a><br>
<a moz-do-not-send="true" href="http://mojavelinux.com/seaminaction">http://mojavelinux.com/seaminaction</a><br>
<a moz-do-not-send="true"
href="http://www.google.com/profiles/dan.j.allen">http://www.google.com/profiles/dan.j.allen</a><br>
</blockquote>
</body>
</html>