This project enables JSF usage inside Spring Boot Application.
It autoconfigures PrimeFaces, PrimeFaces Extensions, AdminFaces, BootsFaces, ButterFaces, IceFaces, RichFaces, OmniFaces, AngularFaces, Mojarra and MyFaces libraries to run at embedded Tomcat, Jetty or Undertow servlet containers. It autoconfigures Weld and Rewrite too.
It also aims to solve JSF and Spring Boot integration features. Current version includes JSF and CDI annotations support and Spring Security JSF Facelet Tag support.
JoinFaces Example shows JSF Spring Boot Starter usage. It may help you to choose the JSF Spring Boot Starter that fits your needs.
Build tool \ packaging | jar |
war |
---|---|---|
Maven | maven-jar-example | maven-war-example |
Gradle | gradle-jar-example | gradle-war-example |
You can find more examples here.
There are many JSF Spring Boot Starters available: basic starters, utility starters, meta starter, component starters, theme starters and extra starters.
See detailed starters here.
Library | Namespace | Example |
---|---|---|
standard (javax.faces) | jsf | jsf.project-stage=development |
primefaces | jsf.primefaces | jsf.primefaces.theme=overcast |
bootsfaces | jsf.bootsfaces | jsf.bootsfaces.usetheme=true |
butterfaces | jsf.butterfaces | jsf.butterfaces.provide-j-query=true |
adminfaces | jsf.adminfaces | jsf.adminfaces.skin=skin-blue |
icefaces | jsf.icefaces | jsf.icefaces.compressDom=true |
richfaces | jsf.richfaces | jsf.richfaces.resource-default-ttl=86400 |
omnifaces | jsf.omnifaces | jsf.omnifaces.faces-views-enabled=true |
angularfaces | jsf.angularfaces | jsf.angularfaces.add-labels=true |
mojarra | jsf.mojarra | jsf.mojarra.prefer-xhtml=true |
myfaces | jsf.myfaces | jsf.myfaces.pretty-html=true |
jetty | jsf.jetty | jsf.jetty.class-path-resource=META-INF/resources |
undertow | jsf.undertow | jsf.undertow.class-path-resource=META-INF/resources |
rewrite | rewrite | rewrite.configReloading=true |
Additional information in #22
Annotation |
---|
@NoneScoped |
@RequestScoped |
@ViewScoped |
@SessionScoped |
@ApplicationScoped |
Namespace: http://www.springframework.org/security/tags
Tag | Description |
---|---|
authorize |
perform Spring Security authorization decisions, using attributes: ifAnyGranted, ifAllGranted, ifNotGranted, access, url, method, var. |
anonymous |
verify if the user is anonymous. |
authenticated |
verify if the user is not anonymous. |
fullyAuthenticated |
verify if the is not an anonymous or a remember-me user. |
Function | Description |
---|---|
areAllGranted |
returns true if the user has all of of the given authorities. |
areAnyGranted |
returns true if the user has any of the given authorities. |
areNotGranted |
returns true if the user does not have any of the given authorities. |
isAllowed |
returns true if the user is allowed to access the given URL and HTTP method combination. |
isAnonymous |
returns true if user is anonymous. |
isAuthenticated |
returns true if the user is not anonymous. |
isFullyAuthenticated |
returns true if the is not an anonymous or a remember-me user. |
Additional information in #29
Joinfaces | Java | Spring Boot | JSF |
---|---|---|---|
2.x |
1.6 to 1.8 |
1.x |
2.0 to 2.2 |
3.0 to 3.2 |
1.8 |
2.0 |
2.0 to 2.3 |
3.3 |
1.8 to 11 |
2.1 |
2.0 to 2.3 |
This are the combinations we have tested and expect to work, but depending on the features you are using, other combinations might work, too.
Additionnal information here.
- Take a look at wiki.
- Report questions and bugs at github.com/joinfaces/joinfaces/issues.
- Report documentation, features, enhancement and bugs at github.com/joinfaces/joinfaces/issues.
- Pull requests are welcome.