jsf-2primefacesfacescontext

Access JSF and Primefaces version numbers programmatically


I use PrimeFaces 3.5.x and Mojarra JSF 2.1.x I would like to access and show the versions of both libraries programmatically.

I use the versions as maven2 properties, but I hope there is an easier way to get the versions. I hope to find something like:

Primeface.getVersion();
FacesContext.getCurrentInstance();

A JavaScript based solution would be fine too, since I only want to display the version on a status page.


Solution

  • For JSF:

    //returns the major version (2.1)
    FacesContext.class.getPackage().getImplementationVersion();
    
    //returns the specification version (2.1)
    Package.getPackage("com.sun.faces").getSpecificationVersion();
    
    //returns the minor implementation version (2.1.x)
    Package.getPackage("com.sun.faces").getImplementationVersion();
    

    For Primefaces 3.x you can use the Constants class in utils package:

    import org.primefaces.util.Constants;
    
    Constants.VERSION