New Drafts of Java EE Web Tier: JSF 1.2, JSP 2.1, Servlet 2.5
I'm pleased to announce another revision of the Java EE Web Tier. In
Jan Luehe's blog
you can find out what's new in JSP 2.1 Proposed Final Draft 2 (PFD2).
The
href="http://jcp.org/aboutJava/communityprocess/maintenance/jsr154/servlet-2.5_MR2.html">Change
Log for Servlet 2.5 will give you the scoop on the Servlet spec.
This blog entry will show what's new in the JSF spec.
In JSF, the most visible new feature since the last draft of the spec
is the addition of the invokeOnComponent() method on
UIComponent. See below for more details.
This revision of the Java Web Tier is fully implemented in
href="https://glassfish.dev.java.net/downloads/15Feb06.html">glassfish
build 37, Sun's open source Java EE 5 Application Server, and the
basis for the upcoming
href="http://java.sun.com/javaee/">Java EE SDK.
Spec changes since PFD, chronologically by section number
-
9.5: The href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/tlddocs/index.html">TLDDocs
for the h: and f: taglibs are now a normative part of the
spec. -
5.4: Use of href="http://jcp.org/en/jsr/detail?id=250">JSR-250 Common
Annotations@PostConstructand
@PreDestroyfor managed bean lifecycle
notifications. See href="http://weblogs.java.net/blog/edburns/archive/2005/08/using_ejb_annot.html">my
August 2005 blog entry for more on this feature. -
3.1.10: Specify how EL
ValueExpressions
must me handled in the attributes map returned from
UIComponent.getAttributes(). -
5.4: List the supported Java EE 5 annotations one may
put in a JSF Managed bean.@Resource
@Resources
@EJB
@EJBs
@WebServiceRef
@WebServiceRefs
@PersistenceContext
@PersistenceContexts
@PersistenceUnit
@PersistenceUnits -
2.2.2: Define the term "local value" more concretely.
-
Preface: Added section on backwards compatibility with
previous versions of the JSF spec. -
9.4.8: Explicitly state that the use and meaning of a
UIParameterchild is the responsibility of the
parent component inside which it is nested. -
5.3: State that managed bean properties may be Java
enum types. Define coercion rules. -
7.1.1: Widen the expected type returned from a
UICommandaction method to beObject
instead ofString. This allows the use of Java
enum types as returns from action methods, which can simplify
navigation rules. -
7.3: State that the Action method must return
Object. -
3.1.8: New method:
UIComponent.invokeOnComponent(), and supporting
callback interfaceContextCallback. This method
allows you to execute a callback on an arbitrary node in the
view given itsclientId. An override is provided
forUIDatathat provides for correctly
positioning the table to the proper row before continuing to
find the component. -
9.3.1.2: Add a note mentioning that
tld-versionin an explicit taglib def, and
versionin an implicit taglib def are
semantically equivalent with respect to their use in
determining the backwards compatability strategy employed.
JSF-API Contract Changes, chronological by functional area
-
Standard HTML RenderKit: Changes to outputText,
outputFormat, message and messages renderers. Add header and
footer facets to the declaration ofUIColumn.
Specify that the default value of the "rendered" property is
true. The "target" attribute of the link
renderers is not a passthru attribute. Modify commandLink
renderer to describe what should happen if "disabled" is true.
Attributes that have a boolean value or meaning, such as
"ismap", "disabled", or "readonly", must be rendered without
attribute minization. For example, "ismap=ismap". Update
"acceptcharset" attribute on Form to be non-passthrough since
the attribute value is rendered as "accept-charset".
GridRenderer supports the "caption" attribute. -
Wrappers for decorating
,<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/application/StateManagerWrapper.html">StateManager</a>
,<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/application/ViewHandlerWrapper.html">ViewHandler</a>
and
.<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/application/ResponseWriterWrapper.html">ResponseWriter</a> -
JSP Custom tags for JSF 1.2 Components must now extend
.<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/webapp/UIComponentELTag.html">javax.faces.webapp.UIComponentELTag</a>
JSF 1.1 component tags still extend
,<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/webapp/UIComponentTag.html">UIComponentTag</a>
which is now deprecated. -
The
<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/component/UIForm.html#isPrependId()">prependId</a>
property ofUIFormis now
ValueExpressionenabled. -
New method on
UIComponent,<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/component/UIComponent.html#invokeOnComponent(javax.faces.context.FacesContext,java.lang.String,javax.faces.component.ContextCallback)">invokeOnComponent</a>
and new callback interface
.<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/component/ContextCallback.html">ContextCallback</a> -
Relax the spec language for
<a
href="http://java.sun.com/j2ee/javaserverfaces/1.2/docs/api/javax/faces/component/UIComponent.html#findComponent(java.lang.String)">findComponent</a>
to allow for any implementation that accomplishes the same
thing as the specified algorithm. Also allow for
findComponentto work properly if nested naming
containers with the same name exist.
JSF-API Implementation Changes, chronological by functional area
-
Refactored build system to be more maintainable.
-
Rob Gibson contributed a fix to improve how more than
one JSF portlet may run in the same portal. -
Performance improvements in attribute/property
transparency. -
Modify
FacesServletso that if the servlet
is prefix mapped, requests starting withWEB-INF
orMETA-INFmust return
SC_NOT_FOUND. -
Changes to make tree creation and content interweaving
work withjsp:includeand JSTL's
c:import. -
Changed all
@exceptionjavadoc statements
to@throwsstatements due to Sun bug 6359046. -
Allow
UIParameterchildren inside of
select* components. -
Various backwards compatibility allowances.
Technorati Tags: edburns
- Login or register to post comments
- Printer-friendly version
- edburns's blog
- 1265 reads





