Afficher du texte dans une JSP à partir d'une classe
Bonjour,
Je souhaiterais afficher du texte sur ma page JSP.
Donc lorsque je fais cela dans mon index.jsp :
Code:
<% out.print("Hello World"); %>
Ça fonctionne correctement.
Par contre je souhaiterais afficher ce out.print("Hello World"); à partir d'une classe quelconque de mon projet, mais cela m'indique une erreur :
http://s4.noelshack.com/uploads/imag...taffichage.png
Je décide donc de créer un nouveau projet de Test, avec la classe suivante :
Code:
1 2 3 4 5
| public class Affichage {
public static void afficheTexte(){
System.out.print("Hello World");
}
} |
Puis avec :
Code:
1 2 3 4 5 6 7 8
| import java.io.PrintWriter;
public class Affichage {
public static void afficheTexte(){
PrintWriter out = null;
out.print("Hello World");
}
} |
Pour enfin effectuer un affichage avec cette ligne de code dans la JSP :
Code:
<% Affichage.afficheTexte(); %>
Mais dans les 2 cas j'obtiens une erreur HTTP 500, avec le message d'erreur suivant :
Citation:
Etat HTTP 500 -
type Rapport d''exception
message
description Le serveur a rencontré une erreur interne () qui l'a empêché de satisfaire la requête.
exception
org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP:
Une erreur s'est produite à la ligne: 11 dans le fichier jsp: /index.jsp
Affichage cannot be resolved
8: </head>
9: <body>
10:
11: <% Affichage.afficheTexte(); %>
12:
13: </body>
14: </html>
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:331)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:457)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:378)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:353)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
Comment faire pour afficher du texte à partir d'une méthode de sa classe ?
Je précise 2 points :
- Je n'ai pas de classe héritant de Servlet dans le projet Test.
- Je n'ai pas créé de fichier web.xml dans WEB-INF.
Mon but c'est d'effectuer de l'affichage dynamique par la suite (tout en respectant un modèle MVC, donc pas de if/else ou boucles dans la vue JSP), c'est pour cela que je procède ainsi, comme je le faisais en PHP.
Je vous remercie pour votre aide. :)