Bonjour,
Je crée un nouveau projet JSF.
J'ai réussi à faire un build avec Maven d'une demo mais pas le test avec Wildfly intégré à Eclipse, mais le problème que je rencontre actuellement est le suivant:
Lorsque je cherche à faire un projet s'inspirant de cette demo en créant un formulaire d'inscription pour étudiants: j'ai une version avec certains import javax.faces qui compile et une autre avec jakarta.* qui elle ne compile pas.
Le code simplifié de mon bean:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" xmlns:f="http://xmlns.jcp.org/jsf/core" xmlns:h="http://xmlns.jcp.org/jsf/html"> <h:head> <meta charset="UTF-8"> <title>Insert title here</title> </h:head> <h:body> <f:view> <h:form> <h:panelGrid columns="2"> <h:outputText value="Entrer votre prenom" /> <h:panelGroup> <h:inputText id="firstname" value="#{studentControllerBean.firstName}" required="true"> </h:inputText> </h:panelGroup> <h:outputText value="Entrer votre nom de famille" /> <h:panelGroup> <h:inputText id="lastname" value="#{studentControllerBean.lastName}" required="true"> </h:inputText> </h:panelGroup> <h:outputText value="Selectionner un cursus (abonnement)" /> <h:panelGroup> <h:selectOneListbox id="abonne" value="#{studentControllerBean.abonne}"> <f:selectItems value="#{studentControllerBean.abonneItems}"/> </h:selectOneListbox> </h:panelGroup> </h:panelGrid> <h:commandButton value="Valider" action="#{studentControllerBean.registeroutcome}"/> </h:form> </f:view> </h:body> </html>
si je remplace les imports (en commentaire quand ça marchait, et decommenté la nouvelle version
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 @ManagedBean @RequestScoped public class StudentControllerBean { public String firstName; public String lastName; public int abonne; public Student registerStudent; @Inject public StudentDAO studentDAO; public List<Student> students; // en dur pour l'instant private SelectItem[] abonneItems = { new SelectItem(1, "science"), new SelectItem(2, "engineering"), new SelectItem(3, "building") };
ça ne compile plus. J'obtientdes 'cannot find symbol'.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 import javax.faces.bean.ManagedBean; ///import jakarta.inject.Named; // prefer this on : jakarta CDI //import javax.faces.bean.RequestScoped; import jakarta.enterprise.context.RequestScoped;
Que faire, car j'ai vu que la version qui marche est deprecated.
Mon pom:
Question: est ce qu'il faut que j'utilise jakarta au lieu de javax seulement dans le pom et chercher une autre cause à mon problème de déploiement?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <dependency> <groupId>jakarta.platform</groupId> <artifactId>jakarta.jakartaee-api</artifactId> <version>8.0.0</version> <scope>provided</scope> </dependency> <!-- https://mvnrepository.com/artifact/org.glassfish/jakarta.faces --> <dependency> <groupId>org.glassfish</groupId> <artifactId>jakarta.faces</artifactId> <version>4.0.0-M1</version> <scope>provided</scope> </dependency>
(J'ai regardé des fils de discussion https://stackoverflow.com/questions/...ries-via-maven)
Partager