Witam,
tworze sobie w ramach nauki REST program do przechowywania książek. Udało mi się zrobić dodawanie pobieranie listy itd. Stworzyłem 2 strony JSP. Pierwsza z nich będzie zawierała tabele ze wszystkimi dodanymi książkami, natomiast druga formatkę umożliwiająca wprowadzanie nowych książek. Wysyłanie udało już mi się zrobić, teraz mam problem z automatycznym generowanie wierszy w tabeli zależnie od tego ile książek zostało już zapisanych.
Mój plik jsp wygląda nastepująca:
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<a href="http://localhost:8080/books/add"><button>Add Book</button></a>
<table border="4">
<thead>
<td align="center">AUTHOR</td>
<td align="center">TITLE</td>
<td align="center">ISBN</td>
</thead>
<%
for(int i=0;i<5;i++){
%>
<tBody>
<td>${it.book1.get(0)}</td>
<td>${it.book1.get(1)}</td>
<td>${it.book1.get(2)}</td>
</tBody>
<%
}
%>
</table>
</body>
</html>
W powyższym kodzie 5 razy wypisuje to samo. Pytanie brzmi jak pobrać ilość przechowywanych obiektów w "it" oraz jak się odwołać do nich nie znając ich nazwy?
Klasa wysyłająca wszystkie książki wygląda następująco:
@GET
@Produces("text/html")
public Response getAllBooks() {
Map<String, Object> map = new HashMap<String, Object>();
for (int i = 0; i < service.getBooks().size(); i++) {
ArrayList<String> list = new ArrayList<String>();
list.add(service.getBooks().get(i).getAuthor());
list.add(service.getBooks().get(i).getTitle());
list.add(service.getBooks().get(i).getIsbn());
map.put(service.getBooks().get(i).getId(), list);
}
return Response.ok(new Viewable("/index", map)).build();
}
Pozdrawiam