Gwiazdka nieaktywnaGwiazdka nieaktywnaGwiazdka nieaktywnaGwiazdka nieaktywnaGwiazdka nieaktywna
 

Podczas projektowania systemów uwzględnia się działanie projektu w czasie rzeczywistym. Jednak, aby osiągnąć zamierzony cel zespół programistów musi wybrać odpowiednie frameworki, które umożliwią wykonanie projektu. Jedną z wielu technologii obecnie wykorzystywaną przy projektowaniu systemów jest technologia AJAX (ang. Asynchronous JavaScript and XML).

Systemy wykonane za pomocą tej technologii są bardziej przyjazne dla użytkowników, jednak powodują znaczne obciążenia serwerów. Bardzo duża część funkcji obsługiwanych po stronie klienta i tak korzysta z bazy danych aplikacji. Wszystko wykonywane jest w tle i większość użytkowników systemu nawet nie jest tego świadoma. Taka aplikacja wydaje się pracować szybciej, ale to tylko złudzenie. Jest to jeden z powodów, przez który limit transferu na wykupionym serwerze może zablokować całą aplikację. Dlatego technologia AJAX nie zawsze jest dobrym rozwiązaniem. Aby nie pisać wszystkiego od podstaw można skorzystać z jednego z wielu frameworków wspierających tą technologię np.: RichFaces, IceFaces. Dzięki podanym technologiom wykorzystuje się gotowe znaczniki.

Bardzo dobrym rozwiązaniem jest framework RichFaces. Strona domowa frameworka znajduje się pod adresem http://www.jboss.org/richfaces. Dokumentację technologii RichFaces udostępniono na stronie http://www.jboss.org/richfaces/docs, istnieje również możliwość zapoznania się z informacjami dotyczącymi migracji z wersji RichFaces 3.3.x – 4.x. Framework udostępniono na licencji Open Source, stworzony w celu łatwej integracji funkcji Ajax z aplikacjami biznesowymi tworzonymi w technologii JSF. Zawiera on ponad 100 różnych komponentów wspierających technologię Ajax np.: mapę google, kalendarz, edytor tekstu.

RichFaces składa się z dwóch bibliotek reprezentowanych przez przedrostki:

  • a4j – biblioteka odpowiedzialna za kontrolki Ajax;
  • rich – biblioteka w pełni samodzielnych gotowych do użycia komponentów.

Dobrym źródłem informacji o technologii RichFaces jest strona http://showcase.richfaces.org/, która zawiera bardzo bogaty zbiór znaczników. Każdy jest dokładnie opisany, posiada wersję demo oraz istnieje możliwość pełnego przeanalizowania kodu źródłowego. Kod odpowiedzialny za prawidłowe skonfigurowanie frameworka musi być umieszczony w pliku web.xml. To w nim ustawiono wygląd całej aplikacji. Istnieje kilka skórek wbudowanych w opisywaną technologię np.: blueSky, classic, ruby, japanCherry. Jednak w wielu przypadkach lepiej jest przygotować unikatową skórkę, która zmienia wygląd całego interfejsu użytkownika. Przed projektowaniem własnych skórek warto zapoznać się z artykułem na stronie http://www.packtpub.com/article/skin-customization-in-jboss-richfaces-3.3. Skórki są pakowane w zewnętrzne pliki jar, które można dodać do projektu tak, aby było możliwe z nich korzystanie. Znaczniki context-param w pliku web.xml, odpowiadają za podłączenie do projektu odpowiedniej skórki „blueSky”.

Najbardziej popularne znaczniki odpowiedzialne za wysyłanie żądania Ajax to:

  • a4j:commandButton – przycisk;
  • a4j:commandLink – link zachowujący się tak samo jak przycisk w formularzu;
  • a4j:support – znacznik odpowiedzialny za dodanie funkcjonalności Ajax do standardowych komponentów JSF.

Od wersji RichFaces 3.3.0 udostępniono komponent rich:editor wykorzystywany do tworzenia edytora WYSIWYG z dokumentacją można zapoznać się na stronie internetowej http://docs.jboss.org/richfaces/latest_3_3_X/en/devguide/html/rich_editor.html. Pod komponent podpięty jest edytor TinyMCE (rys. 1.), obecnie jeden z najbardziej popularnych edytorów dostępnych na rynku http://www.tinymce.com/. Wspierany jest przez największe firmy związane z Internetem jak: Microsoft, Apple, Oracle, Facebook i wiele innych.

Najważniejsze funkcje komponentu rich:editor to:

  • obsługa wiadomości tekstowych Seam;
  • zarządzanie globalną konfiguracją;
  • możliwość używania własnych wtyczek;
  • obsługa wszystkich parametrów TinyMCE przez znacznik f:param (znacznik JSF).

Edytor TinyMCE bardzo łatwo można skonfigurować pod własne projekty. Wszystkie zaawansowane przyciski dla edytora udostępniono na stronie http://www.tinymce.com/wiki.php/Buttons/controls. W edytorze TinyMCE również możliwe jest ustawienie języka polskiego.

 

Obrazek przedstawiający edytor TinyMCE.

Rys. 1. Edytor TinyMCE

 

Wybrane książki:

Książki Helion