Prima di iniziare questo esercizio, è necessario completare l'.

L'applicazione visualizza un elenco di tutti i record dei dipendenti correnti nella struttura. I record vengono visualizzati in una JTable (employeesTable) con colonne che è possibile ordinare, che comprendono il nome, il cognome, l'e-mail e l'ID dipendente. Per ottenere i record per la tabella, è necessario associare employeesTable all'oggetto dati restituito dall'origine dati del servizio Web.

In questo esercizio, è necessario completare le due attività seguenti:

  1. Generazione di un proxy Java di servizi Web nel progetto utilizzando il file WSDL fornito
  2. Associare la tabella dei dipendenti al un oggetto dati restituito dal servizio Web

Panoramica degli oggetti dati, origini dati e binder

Per ottenere un'oggetto dati locale che la employeesTable possa utilizzare, verrà utilizzato l'editor visivo per aggiungere un'origine dati all'applicazione. L'origine dati si connette al proxy dei servizi Web di esempio e rileva i metodi di servizio disponibili per l'applicazione. Verrà quindi scelto il metodo di servizio getLightEmployeeRecord reso disponibile dall'origine dati. Infine, employeesTable verrà associata nell'applicazione ai campi restituiti nell'oggetto dati (lightEmployeeRecordRows).

È possibile creare tutte queste origini dati e gli oggetti dati in modo rapido e semplice mediante le classi binder integrate dell'editor visivo Java. L'editor visivo fornisce un insieme di classi ed interfacce generiche generate nel progetto durante il binding dei componenti visivi ai factory di dati. Le classi binder vengono generate per impostazione predefinita nel pacchetto jve.generated. L'editor visivo fornisce le classi binder come un'implementazione generica che è possibile personalizzare e migliorare per soddisfare le necessità dell'applicazione. Questa esercitazione dimostra la potenza e la flessibilità delle classi binder predefinite, anche per operazioni molto semplici.

Importante: prima di cominciare questo esercizio, si consiglia di leggere i seguenti argomenti della guida. Tali argomenti contengono informazioni utili sulla funzionalità e la logica degli oggetti dati, origini dati, e binder forniti dall'editor:

Per questa esercitazione, verrà utilizzata un'origine dati del servizio Web, diversi tipi di oggetti dati e diversi tipi di binder nell'applicazione. Quando si aggiungono istanze di questi oggetti all'applicazione, l'editor visivo aggiunge le classi necessarie al pacchetto jve.generated nel progetto dove è possibile estendere, sostituire o riscrivere la logica del binding dei dati. L'editor visivo Java fornisce il supporto visivo per il binding di oggetti mostrando sull'area a formato libero della vista Progettazione, gli oggetti dati, le origini dati e i binder che l'applicazione sta utilizzando. L'editor visivo traccia linee tra i componenti visivi, gli oggetti dati e le origini dati per mostrare i binding correnti per ciascun oggetto selezionato.

Il seguente diagramma è una semplice panoramica di come interagiscono i componenti visivi, binder, oggetti dati ed origini dati. L'applicazione generata in questa esercitazione illustra un modo leggermente più complesso e creativo di utilizzare i binder. Questo diagramma non rappresenta esattamente i binder, gli oggetti dati e le origini dati nell'applicazione di esempio in fase di generazione.

Figura 1. Questo diagramma mostra una relazione di esempio tra i componenti visivi, binder, oggetti dati e origini dati
Questo diagramma mostra la relazione tra i componenti visivi, i binder,
gli oggetti dati e le origini dati

Nella Figura 1, ciascun componente visivo dispone di un proprio binder che lo associa a un oggetto dati, oppure, nel caso dei pulsanti, ad un'origine dati. I binder per i campi di testo associano il campo ad una particolare proprietà dell'oggetto dati. Sia l'oggetto dei dati di riga che l'oggetto dati in questo diagramma, ottengono i rispettivi dati da chiamate dirette a un servizio sull'origine dati. L'oggetto dati per i campi di testo utilizza come argomento per il richiamo di Service2, un valore chiave proveniente dalla riga selezionata, che restituisce un record completo che presumibilmente contiene ulteriori informazioni sulla riga selezionata nella tabella. Questo record completo, a sua volta, viene utilizzato come argomento per il binder di azioni del pulsante quando richiama Service3, che potrebbe essere un metodo che aggiorna i valori immessi nei campi. Per una spiegazione più dettagliata degli oggetti dati, binder di dati e origini dati, seguire i collegamenti forniti precedentemente.

Generazione di un proxy Java di servizi Web nel progetto utilizzando il file WSDL

Per utilizzare il servizio Web in esecuzione su un server, l'applicazione Java richiede un proxy Java, o client, con cui interagire. Utilizzando un file WSDL, è possibile generare un proxy Java nel progetto Java utilizzando la procedura guidata Client di servizi Web. Il progetto MyDirectory contiene il file EmployeeDirectory.wsdl che verrà utilizzato per generare questo proxy. Una volta generato il proxy Java, sarà possibile creare un'origine dati che rappresenta il servizio Web e il binding visivo dei componenti.

Importante: il file WSDL utilizzato in questo esercizio prevede che il servizio Web sia stato distribuito su WebSphere Application Server installato localmente e che sia stata utilizzata la porta predefinita per localhost (http://localhost:9080). Se il file EAR è stato distribuito in modo diverso, sarà necessario modificare il file WSDL per poter procedere.

Per generare un proxy Java di servizi Web nel progetto utilizzando, procedere come segue:

  1. Nel menu principale, scegliere File > Nuovo > Altro e selezionare la procedura guidata Servizi Web > Client di servizi Web. Se la categoria servizi Web non viene visualizzata, selezionare Mostra tutte le procedure guidate.
  2. Nella procedura guidata Client di servizi Web, nel campo Tipo di proxy client, selezionare Proxy Java, quindi scegliere Avanti.
  3. Nella pagina Selezione servizio Web, scegliere Sfoglia per individuare il file WSDL.
  4. Nel browser delle risorse, espandere il progetto MyDirectory e selezionare EmployeeDirectory.wsdl. Scegliere OK, quindi Avanti nella procedura guidata Client di servizi Web.

    Procedura guidata Client di servizi Web

  5. Nella pagina Configurazione ambiente client della procedura guidata, scegliere Modifica per modificare la configurazione del client in modo da assicurarsi che i file di runtime corretti o percorsi vengano aggiunti al progetto Java. Selezionare i seguenti valori, quindi scegliere OK:
  6. Nella pagina Configurazione ambiente client della procedura guidata, nel campo Tipo di client, selezionare Java.
  7. Nel campo Progetto client, selezionare MyDirectory. Si tratta del progetto Java dove la procedura guidata Client di servizi Web creerà il proxy Java per il servizio Web.

    Procedura guidata Client di servizi Web

  8. Scegliere Avanti.
  9. Scegliere Fine. La proceduta guidata Client di servizi Web genera il proxy Java e lo aggiunge al nuovo pacchetto (directory.service) nel progetto.

Binding di employeesTable a un oggetto dati restituito dal servizio Web:

Mostra

Poiché la employeesTable è il primo componente visivo di cui viene eseguito il binding in questa applicazione, sarà necessario creare un'origine dati che faccia riferimento al proxy di servizi Web di esempio appena aggiunto al progetto. Quando si esegue il binding degli altri componenti visivi negli esercizi successivi, verrà riutilizzata questa origine dati. In questa fase, vengono aggiunti l'origine dati dei servizi Web e l'oggetto dati lightEmployeeRecordRows.

Per eseguire il binding della tabella dipendenti:

  1. Nella vista Bean Java o Progettazione, selezionare employeesTable. Assicurarsi che non venga selezionato il JScrollPane principale. Al di sopra di employeesTable nell'area di progettazione, viene visualizzata una piccola scheda Binding.

    Scheda Binding sull'area di disegno grafica di JTable

  2. Fare clic sulla scheda Binding nella employeesTable. Oppure, è possibile fare clic con il tasto destro del mouse su employeesTable e selezionare Proprietà di binding.
  3. Poiché l'applicazione non contiene oggetti dati, è necessario aggiungerne uno nuovo. Scegliere Nuovo oggetto dati dell'origine dati.
  4. Nel campo Tipo di origine, selezionare Servizio Web.
  5. Poiché all'applicazione non è stata ancora aggiunta l'origine dati del servizio Web, sarà necessario aggiungerla adesso. Accanto al campo Origine dati, fare clic sul pulsante ... per aprire la finestra Aggiunta origine dati del servizio Web in cui è possibile ricercare client di servizi Web o proxy disponibili nel progetto.
  6. Selezionare il servizio Web EmployeeDirectory e scegliere Fine. Una nuova origine dati viene aggiunta al file DirectoryApp.java.

    Finestra Aggiunta di un origine dati al servizio Web

  7. Nella finestra Nuovo oggetto dati dell'origine dati, selezionare getLightEmployeeRecords() nel campo Servizio di origine ed accettare il nome predefinito per il nuovo oggetto dati: lightEmployeeRecordRows. Non è necessario alcun parametro per questo metodo di servizio. Scegliere OK. Viene creato il nuovo oggetto dati e viene visualizzato nell'area a formato libero della vista Progettazione.

    Finestra Nuovo oggetto dati dell'origine dati

    Suggerimento: poiché viene eseguito il binding di una tabella, la finestra Nuovo oggetto dati dell'origine dati conterrà solo i servizi che restituiscono oggetti dati. In questo caso, il metodo getLightEmployeeRecords() sarà l'unico servizio disponibile che restituisce una matrice di oggetti.

  8. Nella finestra Binding di dati tabella, selezionare l'oggetto dati lightEmployeeRecordRows.
  9. Selezionare le proprietà dell'oggetto dati lightEmployeeRecordRows che si desidera visualizzare nella employeeRecords:

    Finestra Binding di dati tabella

    1. Scegliere il pulsante per aggiungere tutte le proprietà dell'oggetto nell'elenco Colonne della tabella.
    2. Usare le frecce su e giù per disporre le colonne nell'ordine seguente: lastName, firstName, email, employeeID
    3. Ridenominare i titoli delle colonne in Cognome, Nome, Email, ID Dipendente

      Suggerimento: una volta completato il binding della tabella, è sempre possibile tornare alle proprietà di binding e ridenominare e riordinare le colonne.

    4. Scegliere OK.

    La employeesTable è ora associata all'oggetto dati lightEmployeeRecordRows utilizzando JRowTableBinder. Scegliendo l'oggetto dati lightEmployeeRecordRows nell'area a formato libero, l'editor visivo traccia una linea dall'oggetto dati alla tabella. Sulla linea, JRowTableBinder è rappresentato dall'icona del binder di tabella icona binder di tabella. Un'altra linea indica che l'oggetto dati utilizza webServiceDataSource come origine dati.

    Linee del binder per JTable

Rivedere le modifiche al progetto e all'applicazione. Durante questo esercizio, sono stati aggiunti l'origine dati del servizio Web, l'oggetto dati e il binder che associa employeesTable all'oggetto dati. Osservare il nuovo pacchetto (jve.generated) creato nel progetto in cui sono contenute tutte le classi binder generate dall'editor visivo Java. Osservare inoltre il nuovo pacchetto (directory.service) che contiene il proxy Java per il servizio Web.

Pacchetti nel progetto MyDirectory

A questo punto, quando viene eseguita l'applicazione il servizio Web inserirà nella tabella dipendenti i record dei dipendenti esistenti.

Ora è possibile passare all'esercizio successivo: .

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