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 :

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); 
 
 
} 
 
 
}
Et celui de la jsp est le suivant !
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.