Esercizio 1.6: Filtraggio di un elenco record relazionali

Prima di iniziare, è necessario completare l'Esercizio 1.5: Creazione di una pagina di aggiornamento.

Finora è stato illustrato come utilizzare un elenco record relazionali per visualizzare tutti i record di una tabella e come applicare una condizione di filtro a un record relazionale per individuare un record specifico. Verrà ora illustrato come visualizzare solo quei record che soddisfano un criterio specifico, consentendo agli utenti di visualizzare gli annunci in base alla categoria.

Come per la pagina di aggiornamento, verrà applicato un filtro a un parametro che contiene la categoria desiderata, inviata alla pagina da un collegamento ipertestuale. Dal momento che ci sono più record che soddisfano la categoria, il filtro verrà applicato a un elenco record relazionali, piuttosto che a un record relazionale.

Creazione di un elenco record relazionali filtrato

Mostra

La creazione di un elenco record relazionali filtrato prevede un ulteriore passaggio, ossia l'applicazione del filtro per consentire solo la visualizzazione di determinati record. Come per la creazione della pagina update_record.jsp, anche in questo caso verrà specificato un parametro nella pagina all_records.jsp e verrà utilizzato un collegamento per inviare questo parametro alla pagina filtered_records.jsp.

  1. Nella vista Esplora progetti, aprire il file filtered_records.jsp facendo doppio clic su di esso.
  2. Rimuovere il testo predefinito.
  3. Creare un elenco record relazionali trascinando nella pagina un Elenco record relazionali dalla Tavolozza. Si apre la finestra Aggiunta elenco record relazionali.
  4. Assegnare all'elenco di record il nome filtered_recordlist.
  5. Assicurarsi che Aggiungi controlli per i dati sia selezionata e fare clic su Avanti.
  6. Fare clic sulla tabella W5SAMPLE.ADS.
  7. Fare clic su Avanti.
  8. In Attività, fare clic su Filtra risultati. Si apre la finestra Filtri.
  9. Per creare la condizione del filtro, selezionare il pulsante Aggiungi nella scheda Condizioni. Si apre la finestra Condizioni.
  10. Selezionare la colonna MAINCATEGORY dall'elenco a discesa Colonna.
  11. Immettere #{param.CAT} nel campo Valore. Questo codice verrà interpretato al runtime come il valore del parametro di richiesta CAT.

    La finestra Condizioni dovrebbe essere simile a quella contenuta nella seguente immagine:

    Finestra Condizioni

  12. Fare clic su OK per applicare la condizione filtro all'elenco record relazionali. Questa condizione viene visualizzata nella scheda Condizioni.
  13. Fare clic su Chiudi.
  14. Fare clic su Avanti.
  15. Di nuovo, è possibile scegliere tra più colonne da visualizzare nella tabella dati. Scegliere solo queste colonne:
  16. Disporre le colonne nel seguente ordine:
    1. TITLE
    2. DESCRIPTION
    3. MAINCATEGORY
    4. PRICE
    5. PHONE
    La finestra Aggiunta elenco record relazionali dovrebbe essere simile alla finestra riportata nella seguente immagine:

    Finestra Aggiunta elenco record relazionali

  17. Fare clic su Fine. L'elenco record relazionali viene aggiunto alla pagina. Apparentemente, sembra proprio l'elenco di record che si trova nella pagina all_records.jsp, ma poiché è stato filtrato in base alla categoria, visualizza solo i record di una categoria per volta.
  18. Salvare la pagina.

    La pagina dovrebbe essere simile a quella riportata nella seguente immagine:

    Aspetto corrente della pagina

Creazione di collegamenti da all_records.jsp

Mostra

Come per la pagina di aggiornamento, a questo punto occorre creare un collegamento ipertestuale nel file all_records.jsp file che consenta non solo di accedere al file filtered_records.jsp, ma che passi anche il parametro CAT per filtrare l'elenco record relazionali.

  1. Aprire il file all_records.jsp.
  2. Nella vista Tavolozza, espandere il cassetto Componenti Faces.
  3. Trascinare un componente Collegamento dalla Tavolozza direttamente nel controllo output {MAINCATEGORY} della tabella dati. Si apre la finestra Configura URL.
  4. Nel campo URL, specificare filtered_records.jsp come pagina di destinazione e lasciare vuoto il campo Etichetta.

    Rilasciando il collegamento direttamente in un controllo output e lasciando il campo Etichetta vuoto, il collegamento ipertestuale utilizzerà il testo {MAINCATEGORY} come etichetta di collegamento ipertestuale.

  5. Fare clic su OK.
  6. Fare clic sull'Icona Collegamento  Icona Collegamento, quindi scegliere la scheda Parametri nella vista Proprietà.
  7. Fare clic su Aggiungi parametro per creare un nuovo parametro.
  8. Immettere CAT nel campo Nome per il nuovo parametro.
  9. Per associare il parametro CAT alla colonna MAINCATEGORY nel modulo di input, selezionare il campo Valore, quindi fare clic sul pulsante Seleziona oggetto dati pagina in quel campo. Si apre la finestra Selezione oggetto dati pagina.
  10. Nel campo Oggetti dati, fare clic sulla colonna MAINCATEGORY dall'elenco record relazionali all_recordlist(ADS).
  11. Fare clic su OK.
  12. Salvare la pagina e verificarla. Quando si fa clic sul nome di una categoria, si verrà indirizzati alla pagina filtered_records.jsp, che visualizza solo gli annunci economici che appartengono a quella categoria.

Congratulazioni!

Il Modulo 1: Creazione di pagine con connessioni di dati è stato completato. In questo modulo è stato illustrato come:

Aggiunta di funzioni avanzate

Questo modulo ha introdotto l'utente agli strumenti e alla tecnologia JavaServer Faces. Vi sono tante altre operazioni e procedure che è possibile eseguire per accrescere l'efficienza, l'utilizzabilità del sito e per renderlo più interessante. Nel modulo successivo, Modulo 2: Aggiunta di funzioni avanzate, verrà illustrato come trasformare questo sito di esempio in un'applicazione più complessa e più gradevole da un punto di vista visivo. Continuare con il modulo successivo se si desidera scoprire in che modo è possibile trasformare il sito e renderlo come riportato nella seguente immagine:

Anteprima dell'aspetto della pagina

Termini di utilizzo | Feedback
(C) Copyright IBM Corporation 2000, 2004. Tutti i diritti riservati.