OmniFaces 2.2 发布,OmniFaces 刚刚获得一年一度的杜克选择奖(Duke's Choice Awards)。 新特性 #124 - <o:commandScript> got new autorun attribute, allowing for immediate execution during window load event #118 - <o:viewParam> got new default attribute, allowing to set a default value when no view param is present 572c118 - efd9347 - Added Faces#refresh() and Faces#refreshWithQueryString() which do basically redirect(getRequestURI()); added Faces#getRenderKit() #157 - Added Messages#isEmpty(), Messages#isEmpty(clientId) andMessages#isGlobalEmpty() 465a78d - Added FacesConfigXml#getSupportedLocales() which returns an ordered list in contrary to Faces#getSupportedLocales() #116 - <o:form> now supports <f|oaram> children 1c912f7 - 62949a3 - ad44be1 - 5216b57 - @ViewScoped now listens on browser unload event and gets destroyed sooner #148 - @ContextParam which injects a <context-param> value #1c912f7 - Added Components#addScriptXxx() methods which can add an inline script or script resource to head or body #167 - Added Components#includeCompositeComponent() overloaded method which takes an attribute map #149 - Added Components#buildView() and Components#encodeHtml() allowing local building and encoding of (simple) templates #119 - New <o:viewAction> component which evaluates if attribute during invoke application phase 1417fc0 - Added abstract template for "BalusC FileServlet" which supports a.o. cache and range (resume) requests 改进 55510fa - Html5RenderKit is deprecated in favor of JSF 2.2 passthrough attributes; it will be removed in OmniFaces 3.0 d364daf - <f:event type="(pre|post)InvokeAction"> is now supported on all components #164 - <o:importFunctions"> will now throw a clear IllegalArgumentException on non-existing function #167 - Migrated Components#includeCompositeComponent() to JSF 2.2 approach with createComponent() Bug 修复 6cf7123 - 96d5d17 - CombinedResourceHandler failed when resource name contains a query string, and ordering w.r.t. suppressed resources failed during synchronous postback in MyFaces #141 - JNDI#lookup() in GlassFish 4.x incorrectly threw NamingExcepion instead of returning null f914b83 - Components#getParams() didn't consider Converter of ParamHolder #127 - #179 - Ajax#updateRow() failed in paginated tables and p:columns #156 - WebXml#findErrorPageLocation() (and FullAjaxExceptionHandler) didn't consider entire class hierarchy when matching exception types #150 - <o:validateBean> threw NPE on unrendered inputs #144 - <o:validateBean> threw IAE on boolean inputs #168 - ResetInputAjaxActionListener is now also compatible with RichFaces 4.5+ #166 - @Eager blocked deployment in Jetty #183 - OmniPartialViewContext failed to handle web.xml form login page redirect in MyFaces 2.2+ d82d6a0 - <o:graphicImage> generated illegal URL when OpenWebBeans managed bean is used 更多内容请看发行说明。 OmniFaces 是一个 JSF 2 的工具库,其目的是为了让 JSF 应用开发更加简单。 如果你厌倦了重塑JSFUtil或FacesUtil实用程序类,为每个JSF web应用程序定制组件,使用 taghandlers 等来解决JSF的缺点的话,OmniFaces可能是你要找的东西! OmniFaces 2.2 发布,JSF2 工具库下载地址