1) This webinar reviewed JBoss RichFaces, a library of AJAX-enabled UI components for JavaServer Faces applications.
2) It covered basic concepts like partial view rendering and processing. It also demonstrated many of the rich UI components in the rich:* tag library.
3) Recent updates to RichFaces were highlighted, including new components in version 3.3.1 like rich:colorPicker and themes with predefined layouts.
4) Future plans for RichFaces 4.0 were discussed, which will integrate fully with JSF 2.0 and focus on consistency and performance.
3. Who Is This Guy?
Senior Systems Engineer
RIA strategy, development, training
http://mkblog.exadel.com
http://twitter.com/maxkatz
Author of Co-author of
Practical RichFaces
RichFaces Dzone
(Apress) RefCard
4. The Plan
Review what we have done so far
Components from rich:* tag library
What's new in version 3.3.1
Future plans
Questions
6. What You Should Know
Runs in:
• Any servlet container, application
server
• Portals: JBoss, WebLogic, Liferay
Works with:
• Any JSF implementation (1.1, 1.2,
2.0soon)
Works with:
• Seam, Spring
Works with any 3rd party components:
8. Basic Concepts and More
1.Sending AJAX requests
2.Partial view (page) rendering
3.Partial view processing
4.Controlling traffic
9. Sending AJAX Request
• a4j:support – add AJAX support to
any parent component
• a4j:commandButton,
a4j:commandLink
• a4j:poll – periodically send AJAX
request
• a4j:jsFunction – AJAX request from
any custom JavaScript function
• a4j:push – a ping-like request
10. Partial View Rendering
Point reRender to component IDs to be
rendered
•
Bind to EL to decide in runtime
Use a4j:outputPanel to mark areas on
a view always to be rendered
11. <a4j:commandLink reRender="id1,id2"/> Using
<h:outputText id="id1"/> reRender
<h:dataTable id="id2">..</h:dataTable>
<a4j:commandLink reRender="panel"/>
<h:panelGrid id="panel"> Using
<h:outputText /> reRender to
<h:dataTable>..</h:dataTable> point
to container
</h:panelGrid>
<a4j:commandLink/>
<a4j:outputPanel ajaxRendered="true"> Using
<h:outputText /> a4j:outputPanel
<h:dataTable>..</h:dataTable>
<a4j:outputPanel>
<a4j:commandLink
reRender="#{bean.renderControls}"> reRender with
<h:outputText id="id1"/> EL
<h:dataTable id="id2">...</h:dataTable>
13. a4j:queue – controls traffic
between client and server
– Wait for request to return before
sending new one
– Set request delay
– “Replaces” requests from the same
logical components
– Define queue size
• Define queue behavior when size is
exceeded (fire/drop new, fire/drop first)
<a4j:queue name="ajaxQueue" requestDelay="1000"/>
...
<a4j:commandButton value="Delete" similarityGroupingId="actionGroup"
eventsQeueu="ajaxQueue"/>
<a4j:commandButton value="Save" similarityGroupingId="actionGroup"
eventsQeueu="ajaxQueue"/>
14. Rich UI Components
rich:* tag library
Self-contained, ready-to-use rich UI
controls
Over 80 components
19. RichFaces 4.0
Full integration with JSF 2.0
Updated for redesigned for
consistency, performance
Release schedule (2009):
Alpha June
Beta August
CR September
GA October
http://www.jboss.org/community/wiki/R
ichFaces40Planning
20. What We Covered
Reviewed basic concepts
Rich UI components
What's new in RichFaces 3.3.1
RichFaces 4.0 plans