OmniFaces functions

Functions

This is actually not supposed to be a public web page.

The http://omnifaces.org/functions is supposed to be the XML namespace URI of OmniFaces functions. Usually, you declare this URI in the XML root element of your XHTML file as below in order to use OmniFaces functions within the element.

<html ... xmlns:of="http://omnifaces.org/functions">

Normally, XML namespace URIs do not represent actual web resources. That they start with http:// is indeed confusing to starters, but that's so far the best way to have a unique resource identifier (URI) for a XML namespace.

How does it work then?

During webapp's startup, Facelets will parse any .taglib.xml file found in the web application and remember its structure by the <namespace> entry. This way Facelets can find the appropriate classes and method signatures for any of:xxx() function. Also, this way any IDE such as Eclipse can load the appropriate function/argument listing/documentation which is displayed on mouseover or autocomplete. You can find the OmniFaces functions .taglib.xml source code here.

But my OmniFaces functions doesn't work!

And that's why you looked up here? Well, apparently the OmniFaces JAR is just missing in webapp's runtime classpath. Make sure that the JAR file is present in /WEB-INF/lib folder of the built WAR file. If you're not using a dependency management framework such as Maven, then this is usually to be achieved by manually placing a copy of the JAR file straight in the /WEB-INF/lib folder of your webapp project.

Got it

Go back to OmniFaces homepage then :)