From e494287b643f162d9997aa51ff7a52e6c634c6be Mon Sep 17 00:00:00 2001 From: Riccardo Massera Date: Sun, 7 Jan 2024 19:55:48 +0100 Subject: [PATCH] Update Exampres for BootsFaces 2.0.0, Bumb Gradle Wrapper to v8.5. Fix Maven Build to run the examples in a runnable Jar. Update README. --- README.md | 13 ++++++ build.gradle | 25 ++++------- gradle/wrapper/gradle-wrapper.properties | 2 +- pom.xml | 42 ++++++++++++------- .../java/net/bootsfaces/demo/CarBean.java | 12 +++--- .../java/net/bootsfaces/demo/DateBean.java | 6 +-- .../bootsfaces/demo/DefaultValuesBean.java | 6 +-- .../java/net/bootsfaces/demo/ItemBean.java | 10 ++--- .../net/bootsfaces/demo/LoremIpsumBean.java | 10 ++--- .../java/net/bootsfaces/demo/NavLinkBean.java | 6 +-- .../java/net/bootsfaces/demo/TestBean.java | 8 ++-- .../java/net/bootsfaces/demo/UserBean.java | 8 ++-- .../net/bootsfaces/examples/VersionsBean.java | 8 ++-- .../java/net/bootsfaces/themes/Theme.java | 6 +-- src/main/webapp/WEB-INF/web.xml | 4 +- src/main/webapp/applayout/navbarbottom.xhtml | 4 +- src/main/webapp/applayout/pageTemplate.xhtml | 2 +- 17 files changed, 95 insertions(+), 77 deletions(-) diff --git a/README.md b/README.md index de881d5..acff51e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,15 @@ # BootsFaces-examples Examples for the BootsFaces Project + +Build the WAR with Gradle +========================= +./gradlew clean war + + +To build and run Bootable Jar +============================= + +* To build: `mvn package` +* To run: `mvn wildfly-jar:run` +* Access the application: `http://127.0.0.1:8080/ + diff --git a/build.gradle b/build.gradle index f4c06e9..66d63dd 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,5 @@ /* - * Copyright 2014-2022 Riccardo Massera (TheCoder4.Eu) + * Copyright 2014-2024 Riccardo Massera (TheCoder4.Eu) * * This file is part of BootsFaces. * @@ -22,15 +22,15 @@ plugins { id 'war' } -//apply plugin: 'java' -//apply plugin: 'war' - // BootsFaces Library Version to use in the Build -ext.BootsFacesVersion = '1.6.0-SNAPSHOT' +ext.BootsFacesVersion = '2.0.0-SNAPSHOT' -sourceCompatibility = '1.8' -targetCompatibility = '1.8' [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' +java { + toolchain { + languageVersion.set(JavaLanguageVersion.of(11)) + } +} repositories { mavenLocal() @@ -49,19 +49,10 @@ dependencies { // They have been removed and superseded by implementation in Gradle 7.0+. // see https://docs.gradle.org/6.8.3/userguide/java_plugin.html //testCompile group: 'junit', name: 'junit', version: '4.10' - //providedCompile 'javax.enterprise:cdi-api:1.2' - implementation 'javax.enterprise:cdi-api:1.2' - implementation 'javax.servlet:servlet-api:3.+' - implementation 'com.sun.faces:jsf-api:2.2.+' - implementation 'com.sun.faces:jsf-impl:2.2.+' - implementation 'org.glassfish.web:el-impl:2.2' - implementation 'javax.validation:validation-api:1.0.0.GA' - + implementation 'jakarta.platform:jakarta.jakartaee-web-api:10.0.0' implementation "net.bootsfaces:bootsfaces:${BootsFacesVersion}" - //compile "net.bootsfaces:bootsfaces:${BootsFacesVersion}" //1.5.0-SNAPSHOT" } war { archiveFileName = 'Examples.war' - //archiveName = 'Examples.war' // Removed in Gradle 7.0+ //classpath fileTree(dir: 'bsflib', include: '*') // adds a file-set to the WEB-INF/lib dir. } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 2e6e589..a595206 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/pom.xml b/pom.xml index 5a98657..0c7f528 100644 --- a/pom.xml +++ b/pom.xml @@ -5,22 +5,23 @@ net.bootsfaces bsfexamples - 1.6.0-SNAPSHOT + 2.0.0-SNAPSHOT war BootsFaces Examples bootable jar - 2.0.1.Final - 21.0.0.Final + 10.0.0.Final + 30.0.1.Final true - 1.8 - 1.8 + 11 + 11 UTF-8 UTF-8 - false - ${version.wildfly} - ${version.wildfly} + false + 1.2.6 + @@ -28,18 +29,31 @@ jakarta.platform jakarta.jakartaee-api - 8.0.0 + 10.0.0 provided - + - + + org.jboss.shrinkwrap + shrinkwrap-api + ${version.org.jboss.shrinkwrap.shrinkwrap} + + + + org.jboss.shrinkwrap + shrinkwrap-impl-base + ${version.org.jboss.shrinkwrap.shrinkwrap} + + + + @@ -47,7 +61,7 @@ net.bootsfaces bootsfaces - 1.5.0 + 2.0.0-SNAPSHOT jakarta.platform diff --git a/src/main/java/net/bootsfaces/demo/CarBean.java b/src/main/java/net/bootsfaces/demo/CarBean.java index 8dfe182..183e94e 100644 --- a/src/main/java/net/bootsfaces/demo/CarBean.java +++ b/src/main/java/net/bootsfaces/demo/CarBean.java @@ -18,15 +18,15 @@ package net.bootsfaces.demo; import java.io.Serializable; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.RequestScoped; -import javax.validation.constraints.Max; -import javax.validation.constraints.Min; -import javax.validation.constraints.NotNull; +import jakarta.inject.Named; +import jakarta.enterprise.context.RequestScoped; +import jakarta.validation.constraints.Max; +import jakarta.validation.constraints.Min; +import jakarta.validation.constraints.NotNull; /** A simple bean for demo purposes. */ @RequestScoped -@ManagedBean + @Named public class CarBean implements Serializable { @NotNull private String brand=null; diff --git a/src/main/java/net/bootsfaces/demo/DateBean.java b/src/main/java/net/bootsfaces/demo/DateBean.java index 3e25731..264aca4 100644 --- a/src/main/java/net/bootsfaces/demo/DateBean.java +++ b/src/main/java/net/bootsfaces/demo/DateBean.java @@ -6,14 +6,14 @@ import java.io.Serializable; import java.util.Date; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.RequestScoped; +import jakarta.inject.Named; +import jakarta.enterprise.context.RequestScoped; /** * * @author TheCoder4eu */ -@ManagedBean + @Named @RequestScoped public class DateBean implements Serializable { private static final long serialVersionUID = -7642332089180105956L; diff --git a/src/main/java/net/bootsfaces/demo/DefaultValuesBean.java b/src/main/java/net/bootsfaces/demo/DefaultValuesBean.java index 8988e8a..0670fd2 100644 --- a/src/main/java/net/bootsfaces/demo/DefaultValuesBean.java +++ b/src/main/java/net/bootsfaces/demo/DefaultValuesBean.java @@ -2,10 +2,10 @@ import java.io.Serializable; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.SessionScoped; +import jakarta.inject.Named; +import jakarta.enterprise.context.SessionScoped; -@ManagedBean + @Named @SessionScoped public class DefaultValuesBean implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/java/net/bootsfaces/demo/ItemBean.java b/src/main/java/net/bootsfaces/demo/ItemBean.java index 884dbdd..802bca9 100644 --- a/src/main/java/net/bootsfaces/demo/ItemBean.java +++ b/src/main/java/net/bootsfaces/demo/ItemBean.java @@ -1,16 +1,16 @@ package net.bootsfaces.demo; import java.io.Serializable; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.RequestScoped; -import javax.faces.model.ArrayDataModel; -import javax.faces.model.DataModel; +import jakarta.inject.Named; +import jakarta.enterprise.context.RequestScoped; +import jakarta.faces.model.ArrayDataModel; +import jakarta.faces.model.DataModel; /** * Data Model Bean for Items * @author Thecoder4.eu */ -@ManagedBean + @Named @RequestScoped public class ItemBean implements Serializable { diff --git a/src/main/java/net/bootsfaces/demo/LoremIpsumBean.java b/src/main/java/net/bootsfaces/demo/LoremIpsumBean.java index be52a11..ef3d7de 100644 --- a/src/main/java/net/bootsfaces/demo/LoremIpsumBean.java +++ b/src/main/java/net/bootsfaces/demo/LoremIpsumBean.java @@ -8,16 +8,16 @@ import java.io.Serializable; import java.util.StringTokenizer; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.RequestScoped; -import javax.faces.model.ArrayDataModel; -import javax.faces.model.DataModel; +import jakarta.inject.Named; +import jakarta.enterprise.context.RequestScoped; +import jakarta.faces.model.ArrayDataModel; +import jakarta.faces.model.DataModel; /** * Data Model Bean for Items * @author Thecoder4.eu */ -@ManagedBean + @Named @RequestScoped public class LoremIpsumBean implements Serializable { diff --git a/src/main/java/net/bootsfaces/demo/NavLinkBean.java b/src/main/java/net/bootsfaces/demo/NavLinkBean.java index c2a26f4..a180cab 100644 --- a/src/main/java/net/bootsfaces/demo/NavLinkBean.java +++ b/src/main/java/net/bootsfaces/demo/NavLinkBean.java @@ -2,11 +2,11 @@ import java.io.Serializable; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.ViewScoped; +import jakarta.inject.Named; +import jakarta.faces.view.ViewScoped; @ViewScoped -@ManagedBean + @Named public class NavLinkBean implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/java/net/bootsfaces/demo/TestBean.java b/src/main/java/net/bootsfaces/demo/TestBean.java index 4804067..849a8f1 100644 --- a/src/main/java/net/bootsfaces/demo/TestBean.java +++ b/src/main/java/net/bootsfaces/demo/TestBean.java @@ -6,15 +6,15 @@ import java.io.Serializable; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.SessionScoped; -import javax.faces.event.ActionEvent; +import jakarta.inject.Named; +import jakarta.enterprise.context.SessionScoped; +import jakarta.faces.event.ActionEvent; /** * * @author TheCoder4eu */ -@ManagedBean + @Named @SessionScoped public class TestBean implements Serializable { private static final long serialVersionUID = -332002335165889800L; diff --git a/src/main/java/net/bootsfaces/demo/UserBean.java b/src/main/java/net/bootsfaces/demo/UserBean.java index 9275f57..5cbc2c8 100644 --- a/src/main/java/net/bootsfaces/demo/UserBean.java +++ b/src/main/java/net/bootsfaces/demo/UserBean.java @@ -1,10 +1,10 @@ package net.bootsfaces.demo; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.RequestScoped; -import javax.validation.constraints.Size; +import jakarta.inject.Named; +import jakarta.enterprise.context.RequestScoped; +import jakarta.validation.constraints.Size; -@ManagedBean + @Named @RequestScoped public class UserBean { @Size(min=1, max=10) diff --git a/src/main/java/net/bootsfaces/examples/VersionsBean.java b/src/main/java/net/bootsfaces/examples/VersionsBean.java index 03b23d0..e39d41b 100644 --- a/src/main/java/net/bootsfaces/examples/VersionsBean.java +++ b/src/main/java/net/bootsfaces/examples/VersionsBean.java @@ -1,15 +1,15 @@ package net.bootsfaces.examples; -import javax.faces.bean.ApplicationScoped; -import javax.faces.bean.ManagedBean; -import javax.faces.context.FacesContext; +import jakarta.enterprise.context.ApplicationScoped; +import jakarta.inject.Named; +import jakarta.faces.context.FacesContext; import net.bootsfaces.listeners.AddResourcesListener; /** * ManagedBean which holds the version numbers of used frameworks. */ -@ManagedBean(name="versions") +@Named(value = "versions") @ApplicationScoped public class VersionsBean { private final static String bsfVersion, diff --git a/src/main/java/net/bootsfaces/themes/Theme.java b/src/main/java/net/bootsfaces/themes/Theme.java index 88275a1..235f748 100644 --- a/src/main/java/net/bootsfaces/themes/Theme.java +++ b/src/main/java/net/bootsfaces/themes/Theme.java @@ -2,10 +2,10 @@ import java.io.Serializable; -import javax.faces.bean.ManagedBean; -import javax.faces.bean.SessionScoped; +import jakarta.inject.Named; +import jakarta.enterprise.context.SessionScoped; -@ManagedBean + @Named @SessionScoped public class Theme implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml index 1fbd906..13fa47c 100644 --- a/src/main/webapp/WEB-INF/web.xml +++ b/src/main/webapp/WEB-INF/web.xml @@ -1,7 +1,7 @@ - javax.faces.PROJECT_STAGE + jakarta.faces.PROJECT_STAGE Production @@ -25,7 +25,7 @@ Faces Servlet - javax.faces.webapp.FacesServlet + jakarta.faces.webapp.FacesServlet 1 diff --git a/src/main/webapp/applayout/navbarbottom.xhtml b/src/main/webapp/applayout/navbarbottom.xhtml index c8ef841..d40ee26 100644 --- a/src/main/webapp/applayout/navbarbottom.xhtml +++ b/src/main/webapp/applayout/navbarbottom.xhtml @@ -5,8 +5,8 @@ xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:b="http://bootsfaces.net/ui"> - - + + diff --git a/src/main/webapp/applayout/pageTemplate.xhtml b/src/main/webapp/applayout/pageTemplate.xhtml index 4866e97..4bb1dad 100644 --- a/src/main/webapp/applayout/pageTemplate.xhtml +++ b/src/main/webapp/applayout/pageTemplate.xhtml @@ -65,7 +65,7 @@