< Wstecz | Dalej >

Lekcja 1.6: Tworzenie strony aktualizacji

Do tego momentu użytkownik utworzył strony do przeglądania i tworzenia wykazów dla serwisu WWW. W tym ćwiczeniu użytkownik utworzy stronę, która umożliwia aktualizowanie i usuwanie wykazów. Strona aktualizacji wygląda prawie tak samo, jak strona tworzenia, z wyjątkiem tego, że na stronie aktualizacji w polach wejściowych będą wyświetlane dane z istniejącego rekordu, aby użytkownik mógł je zmienić.
O tym zadaniu

Najpierw utworzony zostanie rekord relacyjny, który reprezentuje istniejący rekord z bazy danych. Następnie dla tego rekordu relacyjnego utworzony zostanie formularz aktualizacji JavaServer Faces i po kilku małych zmianach strona będzie gotowa do testowania.

Tworzenie rekordu relacyjnego aktualizacji

  1. Otwórz plik update_record.jsp, klikając go dwukrotnie w widoku Eksplorator korporacyjny.
  2. Usuń domyślny tekst W tym miejscu wstaw treść.
  3. W widoku Paleta kliknij szufladę Dane i usługi, aby ją rozwinąć.
  4. Przeciągnij komponent Rekord relacyjny SDO z widoku Paleta na pusty obszar strony. Zostanie otwarte okno Dodaj rekord relacyjny.
  5. W polu Nazwa wpisz update_record.
  6. W obszarze Utwórz elementy sterujące dla kliknij opcję Aktualizowanie istniejącego rekordu.
  7. Upewnij się, że na stronie WWW została wybrana opcja Dodaj elementy sterujące wejścia/wyjścia do wyświetlania rekordów relacyjnych.
  8. Kliknij przycisk Dalej.
  9. W polu Tabela rozwiń pozycję W5SAMPLE i wybierz tabelę ADS.
  10. Kliknij przycisk Dalej. Zostanie otwarte okno Dodaj rekord relacyjny.

Filtrowanie wyników

Rekord relacyjny może pokazywać tylko jeden rekord z bazy danych. Dlatego należy zastosować filtrację tabeli bazy danych, tak aby użytkownik zobaczył tylko jeden rekord. (Nie trzeba filtrować bazy danych z poprzedniego ćwiczenia, ponieważ utworzono w nim nowy rekord i dlatego w bazie danych nie ma wyników do filtrowania). Ponieważ każdy rekord w bazie danych ma unikalny numer ID, wyniki można filtrować, korzystając z danego numeru ID.
  1. Strona Dodaj rekord relacyjny zawiera listę odsyłaczy do zadań. W obszarze Zadania kliknij opcję Filtruj wyniki. Zostanie otwarte okno Filtry z wstawionym domyślnym warunkiem filtrowania ID = #{param.ID} w kolumnie Filtr. Okno Filtry wygląda podobnie do tego:
    Okno Filtrowanie.
    Ten kod filtruje rekordy z bazy danych, tak że w rekordzie relacyjnym pojawi się tylko rekord o określonym numerze ID. Więcej informacji na temat tego warunku użytkownik pozna później w sekcji Dodawanie działania wiersza w tym ćwiczeniu. Kliknij przycisk Zamknij.
  2. Kliknij przycisk Dalej. Zostanie otwarta strona Konfigurowanie elementów sterujących danych.
  3. W sekcji Pola do wyświetlenia usuń zaznaczenie pola wyboru obok nazw pól, z wyjątkiem tych, które chcesz wyświetlić w formularzu wejściowym:
    • Identyfikator
    • MAINCATEGORY
    • TITLE
    • DESCRIPTION
    • PRICE
    • PHONE
  4. Klikając przyciski W górę lub W dół zmień kolejność nazw pól, układając je od góry do dołu w następujący sposób:
    • Identyfikator
    • TITLE
    • DESCRIPTION
    • MAINCATEGORY
    • PRICE
    • PHONE
  5. W przypadku pola ID wybierz Numer wyświetlany z listy rozwijanej w kolumnie Typ elementu sterującego. Użytkownicy mają możliwość przeglądania numeru ID rekordu, ale nie mogą go edytować. Ustawienie tego pola jako Pole wyjściowe pozwoli uniknąć problemu związanego z podwójnymi numerami ID.
  6. Kliknij przycisk Opcje. Zostanie otwarte okno Opcje. Upewnij się, że została wybrana opcja Przycisk Wyślij. Wpisz Aktualizacja w polu Etykieta. Kliknij przycisk OK. Okno Dodaj rekord relacyjny powinno wyglądać następująco:
    Okno dodaj rekord relacyjny.
  7. Kliknij przycisk Zakończ, aby wygenerować formularz aktualizacji na stronie, jak pokazano poniżej:
    Strona Zaktualizowany formularz.

Programowanie przycisków aktualizacji i usuwania

Następnie dodaj kod powodujący, że użytkownik będzie mógł odnieść się do strony all_records.jsp, aby wyświetlić zmieniony rekord razem z pozostałymi rekordami.
  1. Kliknij prawym przyciskiem myszy przycisk Aktualizuj, który został właśnie utworzony na stronie WWW, i wybierz opcję Właściwości.
  2. Kliknij opcję Dodaj regułę. Zostanie otwarte okno Dodaj regułę nawigacji.
  3. Z menu rozwijanego Strona wybierz pozycję all_records.jsp. W polu Tej reguły używa wybierz opcję Tylko ta akcja. Upewnij się, że pole zawiera tekst: #{pc_Update_record.doUpdate_recordUpdateAction}. Kliknij przycisk OK.
  4. Powtórz kroki 1-3, aby w taki sam sposób zmienić kod dla przycisku Usuń. Upewnij się, że pole Tej reguły używa zawiera tekst: #{pc_Update_record.doUpdate_recordDeleteAction}
  5. Zapisz stronę. Jeśli chcesz wykonać próbę aktualizacji rekordu w bazie danych, aby zweryfikować, czy nastąpi powrót do strony all_records.jsp, uruchom stronę new_record.jsp na serwerze testowym.

Dodawanie działania wiersza

Teraz użytkownik doda działanie wiersza do tabeli w pliku all_records.jsp, tak że użytkownik końcowy będzie mógł wybrać rekord bazy danych do zaktualizowania. Formuła #{param.ID} reprezentuje numer ID rekordu, który zostanie zaktualizowany na stronie aktualizacji. Gdy użytkownik kliknie wiersz, ten numer ID rekordu zostanie wysłany na stronę update_record.jsp jako parametr #{param.ID}. Następnie jako odfiltrowany rekord relacyjny, który został wstawiony na stronie update_record.jsp, zostanie wyświetlony tylko ten rekord do zaktualizowania.
  1. W widoku Eksplorator korporacyjny kliknij dwukrotnie plik all_records.jsp, aby otworzyć go w edytorze. Kliknij w dowolnym miejscu wewnątrz tabeli danych. Otwórz widok Właściwości.
  2. W widoku Właściwości kliknij zakładkę Akcje wiersza pod znacznikiem hx:dataTableEx na liście znaczników HTML.
  3. Kliknij opcję Dodaj akcję wykonywaną po kliknięciu wiersza. Zostanie otwarte okno dialogowe Konfigurowanie akcji wiersza. Wybierz opcję Kliknięcie wiersza powoduje przesłanie żądania do serwera z informacjami o wierszu jako parametrami, a następnie kliknij przycisk OK. Do tabeli danych zostanie dodana kolumna.
  4. W widoku Właściwości kliknij zakładkę hx:requestRowAction.
  5. Kliknij opcję Dodaj regułę. Zostanie otwarte okno dialogowe Dodaj regułę nawigacji.
  6. Z listy rozwijanej Strona wybierz pozycję update_record.jsp. W polu Tej reguły używa wybierz opcję Tylko ta akcja. Pole tylko dla tego zadania jest wypełniane automatycznie przez kod #{pc_All_records.doRowAction1Action}, który został utworzony podczas dodawania działania wiersza. Kliknij przycisk OK. Jeśli powyższa metoda nie spowodowała automatycznego zapełnienia danego pola, wpisz metodę do pola i dodaj poniższy tekst do pliku ClassifiedsTutorial/Java Resources: src/pagecode/All_records.java:
    public String doRowAction1Action() {
    				return "";
    }
  7. W widoku Właściwości kliknij zakładkę Parametr pod znacznikiem hx:requestRowAction. Kliknij opcję Dodaj parametr, a następnie w polu Nazwa wpisz ID. Parametr ID trzeba powiązać z kolumną ID. Wiązanie działania wiersza z kolumną ID listy danych oznacza, że po kliknięciu wiersza parametrem żądania będzie ID rekordu na liście.
    1. Kliknij pole Wartość, następnie przycisk Wybierz obiekt danych strony .
    2. Na zakładce Obiekty danych rozwiń pozycje all_recordlist (Service Data Object) > all_recordlist (ADS) i wybierz ID (java.lang.Integer).
    3. Kliknij przycisk OK.
Wyniki
Teraz, gdy użytkownik kliknie wiersz, w serwisie WWW można będzie zaktualizować informacje dotyczące ogłoszenia drobnego. Zapisz plik i przetestuj stronę. Pamiętaj, aby najpierw otworzyć stronę all_records.jsp, ponieważ jest to strona, która prowadzi do strony update_record.jsp.

Punkt kontrolny lekcji

Lekcja 1.6 została zakończona. W ramach tej lekcji użytkownik nauczył się, w jaki sposób tworzyć strony WWW, które aktualizują rekordy w bazie danych.
< Wstecz | Dalej >

Opinie