Przekazywanie akcji do komponentu composite w Facelets dla JSF 2
Specyfikacja JavaServer Faces 2.0 (JSR 314) obejmuje język definicji widoku Facelets. Udostępnia mechanizmy ułatwiające trzymanie się reguły DRY (Don’t Repeat Yourself) czyli unikanie powtarzania własnego kodu. Templates i composite components, bo o nich mowa umożliwiają dekompozycję definicji widoku na mniejsze framenty. Często w przypadku komponentów zawierających na przykład przyciski przydaje się możliwość przekazywania jako parametru akcji przez nie wywoływanej. W specyfikacji znalazłem informację o dwóch sposobach, w tym jednym podanym w przykładzie. Niemniej jednak podczas korzystania z referencyjnej implementacji okazało się, że jeszcze nie wszystko jest spójne. Read more
Workspace w NetBeans
Wydaje się, że w NetBeans brakuje odpowiednika workspace znanego z Eclipse. Okazuje się jednak, że taka funkcjonalność istnieje choć nie widać jej w GUI. Read more
Tomcat - uwierzytelnianie klienta SSL przy pomocy certyfikatu
Jednym z najpewniejszych sposobów uwierzytelniania klienta w architekturze klient-serwer jest uwierzytelnianie za pomocą certyfikatu klienta podpisanego przez wystawcę znanego (zaufanego) na serwerze. Protokół SSL umożliwia zestawienie bezpiecznego połączenia z klientem i serwerem uwierzytelnionymi certyfikatem. Pokażę jak takie połączenie skonfigurować na serwerze Apache Tomcat i przy pomocy przeglądarki Mozilla Firefox. Read more
Zaciemnione hasła w plikach konfiguracyjnych Websphere Application Server
Ostatnio musiałem ręcznie edytować pliki konfiguracyjne Websphere Application Server. Chodziło konkretnie o security.xml dla serwera. Chciałem podmienić keystore z certyfikatem serwera ponieważ został wgrany wadliwy certyfikat i nawet konsola administracyjna nie działała. Żeby to zrobić trzeba wpisać hasło do keystore. Nie jest to jednak taka prosta sprawa - hasła w security.xml są pozaciemniane. Read more
JPA w NetBeans - tutorial
Java Persistence API (JPA) jako część technologii EJB 3.0 upraszcza zapis danych obiektowych w relacyjnym modelu danych. Trwały zapis modelu aplikacji jest łatwiejszy niż przy pomocy entity beans w EJB 2.1. Używanie entity beans nie było zbyt wygodne i programiści bardzo często w zamian stosowali frameworki takie jak Hibernate, Oracle TopLink, i Java Data Objects (JDO). JPA bazuje na pomysłach grup pracujących nad tymi frameworkami.
Ten post umieściłem w kategorii Java EE. JPA jest częścią specyfikacji Enterprise JavaBeans 3.0 ale nie znaczy to, że nie można go użyć w zwykłej aplikacji SE. Opiszę tutaj właśnie taki przykład. Użyję do tego NetBeans IDE 6 wraz z biblioteką TopLink Essentials, która jest implementacją JPA wykonaną przez Oracle. Read more
JAX-WS vs SOAP:HEADER
Do uwierzytelniania w webserwisach często stosowało się HTTP Authentication (RFC 2617). Jest to sposób przesyłania danych uzytkownika uzależniony od protokołu (w nagłówko HTTP). We współczesnych aplikacjach wykorzystujących usługi sieciowe jest to niedopuszczalne. Wiadomość SOAP może na przykład iść od konsumenta usługi poprzez firewall XML do ESB i wtedy do kolejki komunikatów, z niej do kolejnego ESB aby być wkońcu skierowana do serwera dostawcy usług. W takiej sytuacji przesyłanie danych uwierzytelniających w nagłówku zupełnie się nie sprawdza nie mówiąc już o niższych warstwach jak SSL (RFC 2246). Stostuje się do tego przesyłanie danych związanych z bezpieczeństwem w nagłówku SOAP. Istnieje standard to normalizujący (WS-Security) ale jest stosunkowo nowy (1.0 marzec 2004, 1.1 luty 2006) i wiele usług korzysta z własnych rozwiązań. Read more