Bonjour,
J'ai un projet de fin d'année en jee et j'utilise eclipse et tomcat version 7.0.52 comme server d'application. J'ai débuté avec l'implémentation de servlet et de la page jsp de formulaire , mais quand j'execute le code, il affiche l'erreur suivante : "the processing instruction target [xx][mm] is not allowed !" au niveau de 1er ligne de la page web.xml
Ceci est le code de web.xml :
Code xml : 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 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>essai_bd</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <servlet> <description></description> <display-name>ServletForm</display-name> <servlet-name>ServletForm</servlet-name> <servlet-class>com.shemslt.form.ServletForm</servlet-class> </servlet> <servlet-mapping> <servlet-name>ServletForm</servlet-name> <url-pattern> /formulaire </url-pattern> </servlet-mapping> </web-app>
Le code de la servlet est :
Et celui de la jsp est le suivant !
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 package com.shemslt.form; import java.io.IOException; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @SuppressWarnings("serial") public class ServletForm extends HttpServlet { /** * */ //parametres d'instance private String defaultNom = null; private String defaultAge = null; //init public void init() { // on récupère les paramètres d'initialisation de la servlet ServletConfig config = getServletConfig(); defaultNom =config.getInitParameter("defaultNom"); if (defaultNom == null) defaultNom = "NNN"; defaultNom =config.getInitParameter("defaultAge"); if (defaultAge == null) defaultNom = "AAA"; } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //on recupère les paramètres de formulaire String nom = request.getParameter("txtNom"); if (nom == null) nom = "--"+defaultNom+"--"; String age = request.getParameter("txtAge"); if (age == null) age = "defaultAge"; // on affiche le formulaire request.setAttribute("nom", nom); request.setAttribute("age", age); getServletContext().getRequestDispatcher("/formulaire.jsp").forward(request,response); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //on passe la main a get doGet(request,response); } }
Code jsp : 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
37
38
39
40
41
42 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <% String nom = (String)request.getAttribute ("nom"); if (nom == null) nom = "inconnu"; String age = (String)request.getAttribute ("age"); if (age == null) age = "xx"; %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>personne-formulaire</title> </head> <body> <center> <h2>personne-formulaire</h2> <hr> <form action="/essai_bd/formulaire" method= "post" > <table> <tr> <td>Nom:</td> <td><input type="text" name="txtNom" value=<%=nom%> /> </td> </tr> <tr> <td>Age:</td> <td><input type="text" name="txtAge" value=<%=age%> /> </td> </tr> </table> <table> <tr> <td><input type="submit" value="Envoyer"/> </td> <td><input type="reset" value="Rétablir"/> </td> <td><input type="button" value="Effacer"/> </td> </table> </form> </center> </body> </html>
En plus, dans cetains cas, il m'affiche un problème de port utilisé par d'autres applications. Que faire pour l'éviter ?
Merci d'avance pour votre aide.
Partager