03 czerwca 2007

Tworzenie usługi sieciowej z JAX-WS

W zasadzie tyle rzeczy przyczyniło się do utworzenia kolejnego artykułu nt. JAX-WS - Tworzenie usługi sieciowej z JAX-WS, że nie wiem od czego zacząć. Może niech będzie od najważniejszej - zaproszenie na prezentację podczas konferencji Integracja systemów informatycznych GigaCon 19 czerwca 2007.

Było to jeszcze w maju, kiedy pani Maria Bombała z Software-Konferencje napisała do mnie z propozycją wystąpienia na konferencji, a kiedy ja po raz pierwszy zabrałem się za specyfikację Service Component Architecture (SCA) i projekt Apache Tuscany. W wyniku ewaluacji udało mi się napisać 2 artykuły o SCA - SCAlenie (kompozyt) z Apache Tuscany i Apache Maven oraz SCA z językami skryptowymi w wykonaniu Apache Tuscany, Jetty i Maven 2 i jako niespodzianka wystąpiłem na zajęciach Jacka Sroki na MIMUW, więc miałem wszystko na prezentację o SCA (slajdy, aplikację, wystarczającą ilość wiedzy). Bez wahania przyjąłem zaproszenie. Trochę mnie zmroziło, kiedy zobaczyłem do kogo adresowana jest konferencja - szefów działów IT, kierowników projektów wdrożeniowych, analityków i inżynierów systemowych, projektantów systemów i programistów, ale nie ma to jak próbować się z technologią i przedstawiać ją osobom, które mogą odpowiadać za jej wdrożenie w projektach, więc jeśli ma być więcej SCA w projektach, to właśnie ich należy przekonać do jej stosowania. Zaproszenie zostało przyjęte i przygotowania trwają. Temat prezentacji - SCAlanie w SOA, czyli integracja według Service Component Architecure (SCA). Wszystkich serdecznie zapraszam do udziału i przygotowania zestawu pytań, które wystawią moją wiedzę na próbę. W zanadrzu mam odpowiedzi w stylu Nie wiem, Chyba tak, itp., więc się nie lękam ;-)

Od kilku tygodni zabierałem się za ewaluację Apache CXF i właśnie wczoraj, a może i przedwczoraj, natrafiłem na odnośnik do dokumentacji CXF - Developing a Service using JAX-WS, a tam na uwagę For new development the preferred path is to design your services in WSDL and then generate the code to implement them, czyli nowicjusze zaczynają od WSDL, a to dokładnie o mnie. Hmm, pomyślałem, potrzebuję edytora do WSDL i najlepiej, aby był dostępny w Eclipse IDE (o NetBeans IDE nie myślałem wtedy). Nic nie znalazłem dostępnego jako projekt otwarty, jednakże w trakcie szukania natrafiłem na informacje o specyfikacji The Java API for XML-Based Web Services (JAX-WS). Jako, że specyfikacja była również na mojej liście do poznania i wiedziałem, że sprowadza się do kilku adnotacji, więc pomyślałem, że WSDL mogę stworzyć innym sposobem - utworzę usługę za pomocą JAX-WS. Trochę na około, ale wiedziałem, że zabierze mi to chwilę, więc wcale się nie zmartwiłem, a wręcz przeciwnie. Przypomniałem sobie o konferencji i o potrzebie integracji różnych usług w SCAleniu, które mam tymczasowo oparte o referencje w Javie i skrypt Groovy, więc z zapałem zabrałem się za utworzenie przykładu. Prostota tworzenia usługi z JAX-WS tak mi się spodobała, że napisałem artykuł Tworzenie usługi sieciowej z JAX-WS. Mam teraz i WSDL i usługę do uatrakcyjnienia SCAlenia. Najpierw skończę lekturę wprowadzenia do Apache CXF, a później skończę przykład na prezentację SCA na konferencję Integracja systemów informatycznych GigaCon.