Bonjour, c'est peut être plus du Angular que du java je ne sais pas. Je n'arrive pas à manipuler mon array de json créé avec ce code :
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
public static JsonArray afficherClients(){
 
        MongoCollection<Document> collection = MongoMain.getDB().getCollection("Clients");
 
        FindIterable<Document> iterDoc = collection.find();
        Gson gson = new Gson();
        Iterator<Document> it = iterDoc.iterator();
        JsonArray array = new JsonArray();
 
        while (it.hasNext()) {
 
            array.add(gson.toJson(it.next()));
        }
        System.out.println(array);
        return array;
    }
J'obtiens bien un array de ce style ["{\"_id\":{\"timestamp\":1557130609,\"machineIdentifier\":11848616,\"processIdentifier\":5812,\"counter\":8628551},\"nomEntreprise\":\"test\",\"rue\":\"test\",\"codePostal\":\"test\",\"ville\":\"test\",\"titre\":\"test\",\"nom\":\"test\",\"prenom\":\"test\",\"telephone\":\"test\",\"email\":\"test\"}"]
Ici je n'ai mis qu'un seul enregistrement dans l'array.

Ensuite je récupère tout dans le front via une servlet
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 
		response.setContentType("application/json");  
		request.setAttribute("someData", Clients.afficherClients());
		RequestDispatcher dispatcher = request.getRequestDispatcher("test.jsp");
		dispatcher.forward(request, response);  
 
 
	}
qui envoie les données sur localhost8080 et en typescript je fais un http get
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
	 clients: String[] = [];
 
 
  constructor(private http: HttpClient)
 { }
 
  ngOnInit() {
	  this.http.get<String[]>("http://localhost:8080/my-app/test").subscribe(result => {
        this.clients = result;
      }, error => alert("Erreur"));
  }
Puis je boucle dessus dans mon html
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<ul class="list-group-item-heading" *ngFor="let client of clients; let i = index">
          {{ client }}
        </ul>
MAIS, la j'obtiens seulement tout l'enregistrement précédemment cité, alors que j'aimerai avoir juste le nom par exemple, mais le {{client.nom}} ne fonctionne pas.

Help please !