diff --git a/rules/rules-reviewed/eap8/eap6/eap8-faces.windup.xml b/rules/rules-reviewed/eap8/eap6/eap8-faces.windup.xml new file mode 100644 index 000000000..3a282e6e8 --- /dev/null +++ b/rules/rules-reviewed/eap8/eap6/eap8-faces.windup.xml @@ -0,0 +1,182 @@ + + + + + This ruleset provides analysis of JSF for migration to JBoss EAP 8. + + + + + + + + eap8 + + + + + + + + + + + + + + + + Dependency on JSF artifacts must be updated for EAP8 to Jakarta Faces 4.0. + Update dependency to `org.glassfish:jakarta.faces:4.0.0` or greater + + eap8 + + + + + + + IMPORT + ANNOTATION + + + + + Source reference to `javax.faces.bean.ManagedProperty` must be updated. + Use 'jakarta.faces.annotation.ManagedProperty' along with `@Inject`. + + eap8 + + + + + + + + ANNOTATION + + + + + + + + + JSF ManagedBean has been removed. + Use CDI's `@jakarta.inject.Named(“foo”)` to replace JSF ManagedBeans. + + + eap8 + + + + + + + IMPORT + + + + + Annotation `javax.faces.bean.ViewScoped` removed. + Use `jakarta.faces.view.ViewScoped` to replace it. + + eap8 + + + + + + + IMPORT + + + + + Annotation `javax.faces.bean.{scope}Scoped` removed. + Use `jakarta.enterprise.context.{scope}Scoped` to replace it. + + eap8 + + + + + + + + + + IMPORT + + + + + Annotation `javax.faces.bean.CustomScoped` removed. + Use `jakarta.enterprise.context.spi.Context` to replace it. + + eap8 + + + + + + + IMPORT + + + + + Annotation `javax.faces.bean.NoneScoped` removed. + Use `jakarta.enterprise.context.Dependent` to replace it. + + eap8 + + + + + + + + + + + + + ResourceResolvers have been removed in eap8. + Instead, implement a `jakarta.faces.application.ResourceHandler` and register the fully qualified class name via faces-config.xml/application/resource-handler element + + eap8 + + + + + + + + + + + + + JSP support has been removed in Jakarta EE 10. Facelets will remain as the only default view language, and views can also now be created solely using java. + + + eap8 + + + + + \ No newline at end of file diff --git a/rules/rules-reviewed/eap8/eap6/tests/data/faces/FacesTest.java b/rules/rules-reviewed/eap8/eap6/tests/data/faces/FacesTest.java new file mode 100644 index 000000000..5aa2d05e7 --- /dev/null +++ b/rules/rules-reviewed/eap8/eap6/tests/data/faces/FacesTest.java @@ -0,0 +1,18 @@ +package com.jboss.test; + +import javax.faces.bean.ManagedProperty; +import javax.faces.bean.ManagedBean; +import javax.faces.bean.ViewScoped; +import javax.faces.bean.ApplicationScoped; +import javax.faces.bean.RequestScoped; +import javax.faces.bean.SessionScoped; +import javax.faces.bean.CustomScoped; +import javax.faces.bean.NoneScoped; +import javax.faces.view.facelets.FaceletsResourceResolver; +import javax.faces.view.facelets.ResourceResolver; + +@ManagedBean +public class FacesTest +{ + +} \ No newline at end of file diff --git a/rules/rules-reviewed/eap8/eap6/tests/data/faces/faces-config.xml b/rules/rules-reviewed/eap8/eap6/tests/data/faces/faces-config.xml new file mode 100644 index 000000000..3e146c8b1 --- /dev/null +++ b/rules/rules-reviewed/eap8/eap6/tests/data/faces/faces-config.xml @@ -0,0 +1,11 @@ + + + + testController + com.jboss.Controller + session + + \ No newline at end of file diff --git a/rules/rules-reviewed/eap8/eap6/tests/data/faces/faces.jsp b/rules/rules-reviewed/eap8/eap6/tests/data/faces/faces.jsp new file mode 100644 index 000000000..4c1262764 --- /dev/null +++ b/rules/rules-reviewed/eap8/eap6/tests/data/faces/faces.jsp @@ -0,0 +1,35 @@ +<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1" %> + +<%@ taglib prefix="some" uri="some.tld" %> +<%@ taglib prefix="testSubstr" uri="/WEB-INF/Substr.taglib.tld"%> + +<%@ attribute name="greeting" required="true" %> +<%@ attribute name="name" required="true" %> + +<%! + public boolean errorHandler( String field, String value, Exception ex ) { + return true; + } +%> + + + + + + + Simple JSP + +<%@ page import="java.util.NonExistent" %> +<%@ page import="java.util.Date" %> +<%@ page import="" %> + +

Hello world


+Current Time is: <%=new Date() %> + + + + body + +<%@ include file="included.jsp" %> + + \ No newline at end of file diff --git a/rules/rules-reviewed/eap8/eap6/tests/data/faces/pom.xml b/rules/rules-reviewed/eap8/eap6/tests/data/faces/pom.xml new file mode 100644 index 000000000..bc8c55c28 --- /dev/null +++ b/rules/rules-reviewed/eap8/eap6/tests/data/faces/pom.xml @@ -0,0 +1,33 @@ + + + + 4.0.0 + faces-test + war + faces-test + This project imports faces dependencies + + + + Apache License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.html + repo + + + + + + org.jboss.spec.javax.faces + jboss-jsf-api_2.3_spec + provided + + + com.sun.faces + jsf-api + provided + + + + \ No newline at end of file diff --git a/rules/rules-reviewed/eap8/eap6/tests/eap8-faces.windup.test.xml b/rules/rules-reviewed/eap8/eap6/tests/eap8-faces.windup.test.xml new file mode 100644 index 000000000..56c15bec4 --- /dev/null +++ b/rules/rules-reviewed/eap8/eap6/tests/eap8-faces.windup.test.xml @@ -0,0 +1,84 @@ + + + data/faces/ + ../eap8-faces.windup.xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file