< Wstecz | Dalej >

Lekcja 1.5: Programowanie przycisku Wyślij

Po wprowadzeniu formularza wejściowego strona automatycznie doda nowy rekord do bazy danych. W ramach tej lekcji użytkownik zaprogramuje przycisk Prześlij nową zawartość w celu powrotu na stronę all_records.jsp, aby można było natychmiast wyświetlić nowy rekord w bazie danych.
O tym zadaniu

Aby zaprogramować przycisk Wyślij:

  1. W pliku new_record.jsp prawym przyciskiem myszy kliknij utworzony na formularzu strony WWW przycisk Prześlij nową zawartość i wybierz pozycję Właściwości.
  2. Kliknij opcję Dodaj regułę. Zostanie otwarte okno Dodaj regułę nawigacji.
  3. Z menu rozwijanego Strona wybierz all_records.jsp, a następnie kliknij przycisk OK.
  4. Zapisz stronę. Jeśli chcesz wykonać próbę dodania rekordu do bazy danych, aby zweryfikować, czy nastąpi powrót do strony all_records.jsp, uruchom stronę new_record.jsp na serwerze testowym.
Wyniki
Zapobieganie powstawaniu podwójnych kluczy
Ważne:

Ponieważ kolumna ID jest kluczem głównym w tabeli ADS, nie można dodawać rekordów z atrybutem ID o wartości, która już istnieje w tabeli. W module 2 użytkownik nauczy się, w jaki sposób korzystać z automatycznego generowania kluczy, aby automatycznie tworzyć nowe, nieużywane klucze dla każdego nowego rekordu.

Do tego czasu, aby dodać nowy rekord, na tej stronie należy podać nieużywany numer ID. Rekordy znajdujące się już w bazie danych korzystają z numerów ID od 1 do 24, tak więc jako klucz podstawowy można podać liczbę większą od 24. Podczas wprowadzania więcej niż jednego rekordu, należy się upewnić, że nie został wprowadzony podwójny klucz.

Wiązanie formularza wejściowego z rekordem relacyjnym (opcjonalne)

O tym zadaniu

Formularz wejściowy na stronie jest zestawem pól wejściowych JavaServer Faces, które zostały powiązane z utworzonym rekordem relacyjnym. Pamiętajmy, że rekord relacyjny został utworzony do reprezentowania nowego rekordu w tabeli ADS bazy danych. Wiązanie jest metodą, za pomocą której można powiązać komponent wejściowy JavaServer Faces z kolumną w rekordzie relacyjnym.

Po utworzeniu rekordu relacyjnego kreator automatycznie wiąże wszystkie jego kolumny z polami wejściowymi na stronie. Jeśli to konieczne, pozostałe kolumny można powiązać z pozostałymi polami wejściowymi ręcznie. Aby powiązać kolumnę rekordu relacyjnego z polem wejściowym, kolumnę należy przeciągnąć z widoku Dane strony na pole. Warto poeksperymentować z tym procesem, usuwając i tworząc ponownie na formularzu pole wejściowe Opis.

Widok Dane strony znajduje się zwykle w lewym dolnym rogu środowiska roboczego. Jeśli nie można go znaleźć, należy przejść do paska menu i kliknąć opcje: Okno > Pokaż widok > Dane strony. Ogólnie widok Dane strony jest wykorzystywany tylko podczas tworzenia dynamicznych stron WWW.

W widoku Dane strony przechowywane są połączenia do źródeł danych, takich jak bazy danych, w postaci obiektów danych, takich jak rekordy relacyjne lub listy rekordów relacyjnych. Te obiekty danych nie reprezentują samego źródła danych ani dowolnego komponentu na stronie. Reprezentują natomiast połączenie między projektem a źródłem danych. Po utworzeniu takiego połączenia obiekt danych można przeciągnąć z widoku Dane strony na stronę WWW, aby dokończyć połączenie i wyświetlić informacje ze źródła danych na stronie WWW. Na przykład to jest obraz widoku Dane strony, zawierającego listę rekordów relacyjnych utworzonych w tym kursie:

Widok Dane strony.

Na tym rysunku można zobaczyć listę rekordów relacyjnych all_recordlist (ADS), po której następują wszystkie kolumny w tej liście rekordów relacyjnych. Gdy ten obiekt danych zostanie zdefiniowany i znajdzie się w widoku Dane strony, kolumny można przeciągnąć na komponenty wejściowe na stronie WWW, tyle razy ile potrzeba, bez konieczności ponownego łączenia z bazą danych.

Na przykład jeśli na stronie WWW ma być pokazana wartość kolumny DESCRIPTION, najpierw na stronę należy przeciągnąć tekstowe pole wyjściowe, a następnie na to pole tekstowe z widoku Dane strony należy przeciągnąć kolumnę DESCRIPTION. Jest to operacja wiązania kolumny z polem wyjściowym.

Alternatywnie, jeśli to użytkownik ma wpisywać nową wartość w kolumnie DESCRIPTION w bazie danych, na stronę można przeciągnąć tekstowe pole wejściowe. Następnie należy przeciągnąć kolumnę DESCRIPTION na to tekstowe pole wejściowe.

Następujące kroki zostały udostępnione w celu zilustrowania pojęcia pola wejściowego oraz procesu wiązania. Jednak przejście przez te kroki jest opcjonalne dla tego kursu. Jeśli użytkownik nie chce tego robić, należy przejść do następnej lekcji.

  1. W pliku new_record.jsp kliknij pole wejściowe Opis. Naciśnij klawisz Delete.
  2. W widoku Paleta kliknij szufladę Rozszerzone komponenty składnika Faces, aby ją rozwinąć.
  3. Przeciągnij komponent Wejście z widoku Paleta na komórkę, która zawierała usunięte pole wejściowe Opis. Teraz w tej komórce jest pole wejściowe, ale nie zawiera ono żadnego tekstu, takiego jak {ID} lub {TITLE}, ponieważ to pole wejściowe nie jest powiązane z żadną kolumną.
  4. W widoku Dane strony rozwiń opcje: Rekordy relacyjne SDO > create_record (Service Data Object) > create_record (ADS) i przeciągnij kolumnę DESCRIPTION na utworzony właśnie komponent Wejście. Tekst wewnątrz komponentu Wejście zmieni się i będzie wskazywał, że komponent jest teraz powiązany z kolumną DESCRIPTION, tak jak na tej ilustracji:
    Widok Dane strony.
  5. Zapisz plik, a następnie uruchom stronę na serwerze testowym.

Punkt kontrolny lekcji

Lekcja 1.5 została zakończona. W ramach tej lekcji użytkownik nauczył się programować przycisk komendy oraz wiązać dane z polem wejściowym przez przeciąganie i upuszczanie widgetu JSF z palety na stronę WWW.
< Wstecz | Dalej >

Opinie