Prima di iniziare, è necessario completare l'Esercizio 1.3: Verifica del sito Web.
In questo esercizio verrà creata una pagina che consente agli utenti di creare nuovi annunci economici e di inviarli al database. Come prima cosa, verrà creato un record relazionale per rappresentare un nuovo record nel database, quindi verrà creata una visualizzazione del record nella pagina sotto forma di campi di input.
Se viene visualizzato un messaggio di avviso in cui si comunica che non è possibile stabilire una connessione al database, è possibile che il server di verifica non sia stato arrestato dopo aver eseguito la verifica del sito Web. In tal caso, fare clic su Annulla ciascuna finestra di dialogo e arrestare il server come descritto nella sezione Arresto del server nell'Esercizio 1.3: Verifica del sito Web.
La finestra Aggiunta record relazionale dovrebbe essere simile a quella riportata nella seguente immagine:
Nella pagina Configurazione controlli per dati è possibile personalizzare la visualizzazione del record relazionale. Ad esempio, è possibile modificare le colonne, le etichette dei campi e il pulsante di inoltro nel modulo di input. Dopo aver eseguito queste operazioni, un modulo di input completamente funzionale.
Per ridenominare le etichette generate per i campi di input, fare clic su un'etichetta dalla colonna Etichetta. L'icona del mouse si trasforma in cursore, cosicché è possibile immettere nuovo testo.
La finestra Aggiunta record relazionale dovrebbe essere simile a quella riportata di seguito:
Il modulo contiene un campo Messaggi di errori. Ciò non significa che il progetto contenga errori, ma questo campo indica il punto in cui verranno visualizzati gli eventuali errori durante l'inoltro del modulo da parte dell'utente.
Dopo aver inoltrato il modulo di input, la pagina aggiungerà automaticamente il nuovo record al database. È possibile programmare il pulsante Post New Listing per ritornare alla pagina all_records.jsp, in modo che sia possibile visualizzare immediatamente il nuovo record nel database. A tale scopo, completare la seguente procedura:
Di solito la vista Modifica rapida si trova al centro in basso nel workbench, nelle schede accanto alla vista Proprietà. Se non è possibile trovare la vista Modifica rapida, dalla barra dei menu fare clic su Finestra > Mostra vista > Modifica rapida.
La vista Modifica rapida è un editor Java sensibile al contesto che consente di scrivere eventi di codice per i componenti Faces. La vista Modifica rapida contiene il codice generato che gestisce la creazione di un nuovo record nel database, come illustrato nella seguente immagine:
Dal momento che la colonna ID è una chiave primaria nella tabella ADS, non è possibile aggiungere record con un valore ID che già esiste nella tabella. Nel Modulo 2, verrà descritto come utilizzare la generazione chiave automatica per creare automaticamente una chiave nuova, non utilizzata per ciascun nuovo record.
Per ora, è necessario immettere un numero ID non utilizzato in questa pagina per aggiungere un nuovo record. I record forniti dal database utilizzano numeri ID compresi tra 1 a 22, pertanto è possibile specificare come chiave primaria qualsiasi numero maggiore di 22. Assicurarsi di non immettere le stesse chiavi se si immette più di un record.
Il modulo di input nella pagina è composto da una serie di campi di input JavaServer Faces che sono stati associati al record relazionale che è stato creato. È bene ricordare che il record relazionale è stato creato per rappresentare un nuovo record nella tabella ADS del database. Il binding è un metodo che consente di collegare un componente input JavaServer Faces a una colonna del record relazionale.
Quando è stato creato il record relazionale, la procedura guidata ha automaticamente associato tutte le sue colonne ai campi di input nella pagina. Se si desidera apportare modifiche manualmente, è possibile associare altre colonne ad altri campi di input. Per associare una colonna del record relazionale al campo di input, trascinare la colonna dalla vista Dati di pagina nel campo. È possibile provare questo processo eliminando e ricreando il campo Description del modulo. Ulteriori informazioni sulla vista Dati di pagina.
La procedura riportata di seguito viene fornita per illustrare il concetto di campo di input e il processo di binding; tuttavia, si tratta di un passaggio di questa esercitazione facoltativo. Se non si desidera completare la procedura riportata di seguito, passare all'Esercizio 1.5: Creazione di una pagina di aggiornamento.
A questo punto, questa cella contiene un campo di input, ma non vi è alcun testo come {ID} o {TITLE} all'interno in quanto questo campo di input non è associato ad alcuna colonna.
È ora possibile creare e modificare i moduli di input JavaServer Faces. A questo punto, è possibile iniziare l'Esercizio 1.5: Creazione di una pagina di aggiornamento.