What's new in OmniFaces?

What's new in OmniFaces 3.0?

Release date: 3 January, 2018

Major in OmniFaces 3.0

  • Dependencies are changed from Java 1.7, JSF 2.2, EL 2.2, Servlet 3.0, CDI 1.1 and BV 1.1 to Java 1.8, JSF 2.3, EL 3.0, Servlet 3.1, CDI 2.0 and BV 2.0; as of now, OmniFaces 3.0 is still backwards compatible with EL 2.2, CDI 1.1 and BV 1.1, but that may change when new features are utilized
  • OmniFaces initialization will explicitly fail if CDI BeanManager is unavailable during application startup
  • #388 - <o:form> now defaults to useRequestURI="true"
  • #394 - <o:form> now defaults to partialSubmit="true"
  • #352 - <o:validateBean showMessageFor="@violating"> will not anymore show "remaining" messages for properties which are not coverred by JSF form
  • #411 - ValidateMultipleFields will not anymore skip readonly/disabled/unrendered components but instead supply their current model value
  • e2a3f25 - org.omnifaces.component.output.cache package has been moved to org.omnifaces.util.cache as it's reusable for non-component caches (it's internally also used by CombinedResourceHandler)
  • #338 - All Faces/FacesLocal and Servlets utility methods which previously threw IOException will now throw UncheckedIOException instead
  • 8b3899b - All in 2.x @Deprecated things have been removed, such as org.omnifaces.config.BeanManager (replaced by Beans) and org.omnifaces.renderkit.Html5RenderKit (replaced by JSF 2.2 native passthrough attributes)
  • #404 - All RichFaces-specific hacks have been removed as RichFaces was declared End Of Life at June 2016 and doesn't have a JSF 2.3 compatible version; OmniFaces 3.0 is therefore also not anymore RichFaces compatible

Added in OmniFaces 3.0

Changed in OmniFaces 3.0

  • e2d03d9 - feae34a - 4d3d123 - 236e93b - c275dea - 8284ffb - Under the covers, many things are replaced by new JSF 2.3 API things and also Java8 lambdas and streams have been introduced where possible
  • #286 - GenericEnumConverter has been deprecated as it's now built into JSF 2.3's <h:selectManyXxx> components with the additional "side effect" that those components now also work on non-enum collections without need for any custom converter
  • #277 - <o:importConstants> has been deprecated as it's now moved into JSF 2.3 as <f:importConstants> with the only difference that <f:importConstants> requires being placed in <f:metadata>
  • #268 - <o:commandScript> has been deprecated as it's now moved into JSF 2.3 as <h:commandScript> with exactly the same functionality
  • #267 - omnifaces:fixviewstate.js has been deprecated as it's now finally solved in JSF 2.3 (by yours truly)
  • #388 - includeViewParams="true" and includeRequestParams="true" attributes of <o:form> have been deprecated as those have never proven to be more useful than useRequestURI="true"

Fixed in OmniFaces 3.0

  • Nothing new as compared to latest 2.x.