24/03/2016, ore 07:00: aggiunto XMLName alle specifiche 31/03/2016, ore 10:50: nelle specifiche, i parametri di inizializzazione XMLCookies ed XMLNoCookies sono sostituiti dal parametro di inizializzazione XML 31/03/2016, ore 11:45: nei files ausiliari, corretto "xs_string" in "xs:string" nello schema XML; inoltre, aggiunta una directory con le immagini ed i riferimenti ad alcune di esse nel file XML 31/03/2016, ore 15:20: nelle specifiche, aggiunti i parametri di inizializzazione DBUser e DBPassword 01/04/2016, ore 14:20: nelle specifiche, aggiunto il parametro di inizializzazione ImagesDir; messa una tabella per i parametri di configurazione 02/04/2016, ore 10:20: nelle specifiche, chiarito che il nome utente reale da mostrare nelle pagine è la combinazione di nome e cognome, e basta che uno dei due sia presente 04/04/2016, ore 18:20: in lezione 1, modificate le regole d'esame per il progetto 07/04/2016, ore 09:30: aggiunta la specifica del tag personalizzato 05/05/2016, ore 06:00: effettuate le seguenti modifiche: - Alla specifica della pagina dei prodotti vengono aggiunte le seguenti frasi: "Se non viene dato il parametro categories, e non si è nemmeno arrivati alla pagina dei prodotti scegliendo delle categorie dalla pagina delle categorie, allora occorre tornare alla pagina delle categorie, mostrando all'inizio della pagina stessa il messaggio d'errore ``Please select a category in order to show products''. Se il parametro categories contiene un identificatore di una categoria non esistente, tornare alla pagina delle categorie, mostrando all'inizio della pagina stessa il messaggio d'errore ``The category identifier I does not exist. Please select existing categories in order to show products'' (dove I è il primo identificatore non trovato). " - Nella specifica della pagina dei prodotti è stato precisato il messaggio d'errore da mostrare nel caso venga data una pagina fuori dal range ammissibile per i prodotti. - Nella modalità di funzionamento è stato precisato che eventuali errori nell'invocazione delle pagine devono tutti rimandare alla pagina iniziale delle categorie (con il messaggio d'errore generico ``Incorrect request''). - Nella modalità di funzionamento è stata aggiunta la seguente chiosa alla nota a pie' pagina: ", o che non si riesca a tornare alla pagina precedente dopo un login". - Nella tabella sui parametri di configurazione, è stato precisato che i path devono usare il separatore / anche sotto Windows; inoltre è stato chiarito che XMLName deve usare un path relativo alla web-application, mentre ImagesDir deve usare quello relativo al server. - Nella pagina del carrello, aggiunti 2 bottoni per comprare e cancellare il carrello (per semplicità, fanno la stessa cosa). - Nella pagina di login (descrizione iniziale), chiarito che se si prova a visualizzarla quando un utente è già loggato si ritorna alla pagina iniziale delle categorie - Nella sezione sul tag personalizzato, ridenominato jsp:item in item; sostituito l'attributo id con 2 attributi idCat ed idProd. Inoltre, sono state elencate le proprietà del Java Bean - I vari "link" Delete sono stati trasformati in bottoni HTML. 07/05/2016, ore 02:30: aggiunto "e di identificatore idItem" alla specifica del Java Bean risultante dalla gestione del tag personalizzato 07/05/2016, ore 08:00: aggiunta la proprietà booleana "show" ad ItemBean 10/05/2016, ore 10:30: chiarito che la somma del carrello va calcolata in EUR (se la valuta non è "EUR", allora sarà sempre presente il tag "toEUR") 15/05/2016, ore 18:30: effettuate le seguenti modifiche: - aggiunti vari nomi di tag alla fine della sezione "Nomi di Tag"; - aggiunto "itemsPerPage" alla Tabella 1; - chiarito che la scelta dell'ordinamento per i prodotti va mantenuta per tutte le visite successive, finché non si chiude il browser; - aggiunto il link alla pagina del carrello nelle pagine dei prodotti e delle categorie (solo per gli utenti normali) 17/05/2016, ore 11:00: chiarito che anche l'ordinamento su Price va fatto guardando il solo prezzo in Euro (se la valuta è diversa da EUR, ci sarà sempre toEUR) 17/05/2016, ore 17:00: aggiunta una nota sulla modifica del campo currency nel caso dell'utente amministratore. 18/05/2016, ore 15:00: - nella pagina dei prodotti, chiarito che non bisogna mostrare quelli per i quali per i quali l'attributo show sia falso - sempre nella pagina dei prodotti, chiarito che, affinché un prodotto possa essere scelto per l'acquisto, è necessario che l'attributo available sia meno recente della data della richiesta: - nella pagina del carrello, chiarito che la somma della spesa totale va mostrata in ogni pagina, se c'è la paginazione 26/05/2016, ore 12:30: - aggiunti vari nomi di tag nella sezione "Nomi di Tag"; - nella pagina del carrello, precisato cosa fare se il carrello è vuoto: occorre che sia presente la scritta "The cart is empty" - aggiunti 3 link alla pagina del carrello. - aggiunti i link alla pagina degli utenti nelle pagine delle categorie e dei prodotti - chiarito che un nuovo prodotto, se preso dal DB, ha il massimo identificatore per un prodotto più 1 - chiarito che, se un errore non è esplicitamente trattato nelle specifiche, rimandare alla pagina delle categorie con il messaggio "incorrect request" - chiarito che l'ordinamento dev'essere presente anche nel carrello - riscritta come tabella, ed aggiunti tutti i nomi, alla sezione sui nomi dei tag 27/05/2016, ore 16:00: - aggiunto il link signup alla pagina di login nella Tabella 1 (nomi di tag) - sempre nella Tabella 1, aggiunta una note a pie' pagina - sempre nella Tabella 1, corretto selectAccount con updateAccount 29/05/2016, ore 16:40: - nella Tabella 1, corretto uno dei due deleteIt in deleteAll (pagina del carrello) 30/05/2016, ore 12:00: - nella Tabella 1, cancellato il secondo dei due selectItem (pagina dei prodotti) - nella Tabella 1, aggiunto selectItemi-j (pagina dei prodotti) - nella Tabella 1, chiarito che selectCati è solo per amministratori (pagina delle categorie) - aggiunta la seguente frase alle specifiche della pagina dei prodotti (utenti regolari): "Tuttavia, se un prodotto è già presente nel carrello, non va mostrato nella pagina dei prodotti (a meno che in seguito non venga cancellato dal carrello). " - nelle specifiche dei prodotti e del carrello, chiarito che la somma del carrello va mostrata fino ai centesimi (2 cifre decimali solamente) 01/06/2016, ore 09:40: - aggiunto il link backToProducts alla Tabella 1 (pagina del carrello) - corretto il link backToProducts in backToCategories nella Tabella 1 (pagina dei prodotti) - aggiunto il pulsante HTML updateCati nella Tabella 1 (pagina delle categorie) - corretto il pulsante HTML selectCati in deleteCati nella Tabella 1 (pagina delle categorie) - corretti updateCategoryName e updateCategoryImage in updateCategoryiName e updateCategoryiImage, con l'indicazione dell'id della categoria, nella Tabella 1 (pagina delle categorie) - aggiunti i link alla pagina della cancellazione delle categorie alla Tabella 1 (chiarito che sono link anche nelle specifiche della pagina per la cancellazione di una categoria) 01/06/2016, ore 15:00: - aggiunti 2 link (backToCategories e logout) alla pagina degli utenti, vedere Tabella 1 03/06/2016, ore 10:00: - aggiunto che idProd ed idCat del Java Bean devono essere settati a 0 dal costruttore di default 06/06/2016, ore 10:10 - aggiunta alla specifica della pagina delle categorie la seguente frase: "Qui come altrove, nel momento di inserire le immagini (quando sono presenti), occorre usare tutte le informazioni presenti nella base di dati per la categoria (o, più avanti, per il prodotto) in esame, che vanno codificate negli opportuni attributi del tag HTML img. Pertanto, gli attributi src ed alt del tag image di market.xsd diventano gli omonimi attributi del tag HTML img, e analoga sorte deve toccare gli attributi image path ed image descr delle tabelle item e category della base di dati, rispettivamente. " - aggiunta una precisazione al formato del Makefile nella sezione sulle modalità di consegna. - aggiunta la seguente precisazione sulle modalità di consegna.: "Infine, non usare il tag url-pattern vuoto (ovvero, o ) nel web.xml." 06/06/2016, ore 14:00 - aggiunta la seguente precisazione alla pagina del carrello: "Anche qui, le scelte per paginazione ed ordinamento vanno mantenute finch\ef il browser non viene chiuso. Inoltre, la scelta di paginazione/ordinamento fatta per i prodotti dev'essere inizialmente valida anche per il carrello (e viceversa). " 20/06/2016, ore 07:30 - aggiunto il link backToCategories alla pagina del carrello in Tabella 1