Bonjour tout le monde,

Je suis en train de continuer mon projet d'étude, je souhaiterai comprendre quelque chose de très simple (peut être trop simple pour que je comprenne, eh oui ca m'arrive parfois ):

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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
package com.supinfo.notetonsta.rest;
 
import java.util.List;
 
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.MediaType;
 
import com.supinfo.notetonsta.dao.CampusDao;
import com.supinfo.notetonsta.dao.jpa.JpaCampusDao;
import com.supinfo.notetonsta.entity.Campus;
import com.supinfo.notetonsta.util.PersistenceManager;
 
/*
 * 
 * produces = accept header
 * consumes = contenttype header, celui qui nous intéresse
 * 
 */
 
@Path("/campuses")
public class CampusRessource {
 
	@GET @Consumes(MediaType.APPLICATION_XML)
	public String getAllCampusesInXml(){
 
		CampusDao campusDao = new JpaCampusDao(PersistenceManager.getEntityManagerFactory());
		StringBuilder sb = new StringBuilder();
		List<Campus> listCampuses = campusDao.getAllCampus();
		sb.append("<campuses>");
		sb.append("<count>" + listCampuses.size() + "</count>");
		for(Campus campus: listCampuses)
		{
			sb.append("<campus>");
			sb.append("<name>" + campus.getName() + "</name>");
			sb.append("</campus>");
 
		}
		sb.append("</campuses>");
		return sb.toString();
	}
 
	@GET @Consumes(MediaType.APPLICATION_JSON) //même méthode mais json
	public String getAllCampusesInJson()//retourne tous les campus disponibles dans la base de données
	{
		CampusDao campusDao = new JpaCampusDao(PersistenceManager.getEntityManagerFactory());
		StringBuilder sb = new StringBuilder();
		List<Campus> listCampuses = campusDao.getAllCampus();
 
		sb.append("{\"campuses\":[{");
 
		for (Campus campus : listCampuses) {
			sb.append("\"id\":" + "" + campus.getId() + "\"\",");
			sb.append("\"name\":" + "" + campus.getName() + "\"\"");
		}
 
		sb.append("}]}");
		return sb.toString();
	}
 
	@GET @Path("/{idCampus}") @Consumes(MediaType.APPLICATION_JSON)
	public String getCampusesByIdInJson(@PathParam("idCampus") Long campusId)
	{
		CampusDao campusDao = new JpaCampusDao(PersistenceManager.getEntityManagerFactory());
		StringBuilder sb = new StringBuilder();
 
		Campus campus = campusDao.getCampusById(campusId);
 
		sb.append("{");
 
		sb.append("\"id\":" + "" + campus.getId() + "\"\",");
		sb.append("\"name\":" + "" + campus.getName() + "\"\"");
 
		sb.append("}");
 
		return sb.toString();
	}
 
	@GET @Path("/{idCampus}") @Consumes(MediaType.APPLICATION_XML)//la même méthode mais pour le xml
	public String getCampusByIdInXml(@PathParam("idCampus") Long campusId)//modif, campusId est le paramètre contenant l'id campus
	{
		CampusDao campusDao = new JpaCampusDao(PersistenceManager.getEntityManagerFactory());//connexion a la base de données avec instance JpaCampusDao
		StringBuilder sb = new StringBuilder();
		//List<Campus> listCampuses = campusDao.getCampusById(campusId);
 
		Campus campus = campusDao.getCampusById(campusId);//on récupère le campus dont l'id figure dans l'url (c'est un object campus que l'on récupère)
 
		sb.append("<campuses>");//1 seul campus a retrouver
		sb.append("<campus>");
 
		sb.append("<id>" + campus.getId() + "</id>");//on affiche son id
		sb.append("<name>" + campus.getName() + "</name>");//on affiche son nom
 
		sb.append("</campus>");
		sb.append("</campuses>");
 
		return sb.toString();//on affiche tout le flux en retournant l'objet string builder converti en string.
	}
 
}
Avec ce code je n'arrive pas à récupérer mes données sous le format xml (pour info j'utilise l'app "Simple REST Client" pour chrome) en indiquant l'url de mon projet:
http://localhost:8080/NoteTonSTA/campuses ou en utilisant l'url http://localhost:8080/NoteTonSTA/campuses/id_existant

Quelqu'un sait pourquoi ou peut-il au moins m'indiquer les possibles sources du problème?

Merci d'avance