Java w komercyjnych usługach sieciowych. Księga eksperta - Helion
Tytuł oryginału: Java Web Services Unleashed
Tłumaczenie: Adam Fiącek, Cezary Welsyng
ISBN: 83-7197-779-4
stron: 664, Format: B5, okładka: twarda
Data wydania: 2003-02-06
Księgarnia: Helion
Cena książki: 89,00 zł
Usługi WWW to ostatni krzyk programistycznej mody. W największym skrócie polegają one na udostępnianiu w sieci Internet dynamicznych aplikacji sieciowych. Ten jednozdaniowy opis nie przekazuje całego potencjału usług WWW. Jest on ogromny. Dzięki usługom WWW aplikacje łączą się na niespotykaną do tej pory, globalną skalę. Już obecnie skorzystać można z setek usług WWW. Dzięki nim uzyskasz między innymi informacje finansowe, przeszukasz Internet, przeprowadzisz konwersję między różnymi formatami dokumentów, a nawet rozegrasz partię szachów z komputerem.
Java -- dzięki doskonałemu wsparciu dla XML-a jest jedną z najlepszych platform do implementacji usług WWW. Książka stanowi wyczerpujące, dokładne i -- co równie ważne -- aktualne kompendium, zawierające informacje niezbędne, by wykorzystać istniejące i stworzyć nowe usługi WWW.
W książce przedstawiono między innymi:
- Przykłady zastosowań usług WWW
- Biznesowe aspekty tworzenia usług WWW
- WDSL -- język opisu usług sieciowych
- SOAP -- protokół wymiany komunikatów
- UDDI -- format katalogowania usług WWW
- Wykorzystanie pakietu JAX do tworzenia usług WWW
- Zagadnienia związane z bezpieczeństwem
- Dodatkowe formaty używane w kontekście usług WWW: WSFL, WSIF
- Przykładowe implementacje usług WWW
Osoby które kupowały "Java w komercyjnych usługach sieciowych. Księga eksperta", wybierały także:
- Metoda dziel i zwyci 89,00 zł, (26,70 zł -70%)
- Język C. Kurs video. Praktyczne wprowadzenie do programowania 99,00 zł, (29,70 zł -70%)
- Wprowadzenie do Javy. Programowanie i struktury danych. Wydanie XII 193,23 zł, (59,90 zł -69%)
- Spring i Spring Boot. Kurs video. Testowanie aplikacji i bezpiecze 125,42 zł, (45,15 zł -64%)
- Maven. Kurs video. Automatyzacja tworzenia aplikacji w Javie 98,98 zł, (39,59 zł -60%)
Spis treści
Java w komercyjnych usługach sieciowych. Księga eksperta -- spis treści
O Autorach (13)
Wstęp (17)
Część I Wprowadzenie do usług sieciowych (21)
Rozdział 1. Czym są usługi sieciowe? (23)
- B2B to tak naprawdę A2A (23)
- Składanie elementów w jedną całość (24)
- Ideologiczne wojny bez zwycięzców (24)
- Zgodność operacyjna dla każdego (25)
- Wszystko się zmienia (25)
- Czym są usługi sieciowe? (26)
- Prosta definicja (26)
- Szersza perspektywa (27)
- Zasięg usług sieciowych (28)
- Znaczenie technologii usług sieciowych (29)
- XML (eXtensible Markup Language) (29)
- WSDL (Web Services Definition Language) (30)
- UDDI (Universal Description Discovery and Integration) (31)
- SOAP (Simple Object Access Protocol) (32)
- ebXML (Electronic Business XML) (33)
- Podsumowanie (34)
Rozdział 2. Internet i usługi sieciowe - nowe środowisko biznesowe (35)
- Nowe aspekty znanych rozwiązań (36)
- Tworzenie metamodelu przedsiębiorstwa (37)
- Techniczny aspekt atrakcyjności usług sieciowych (38)
- Uniwersalne spoiwo (38)
- Sprzężenie a niezależność (38)
- Tworzenie definicji z zastosowaniem metadanych (39)
- Przysłanianie zabezpieczeń (40)
- Role biznesowe (41)
- Zamawiający (42)
- Broker (42)
- Usługodawca (43)
- Zagadnienia bezpieczeństwa (44)
- Wpływ na modele biznesowe (44)
- Analiza biznesowa (45)
- Co decyduje o powodzeniu inwestycji? (46)
- Usługi sieciowe a B2B (47)
- Kierunki i perspektywy rozwoju biznesu (48)
- Integracja łańcuchów usług (48)
- Usługodawca WSP (50)
- Ontologie pionowe (53)
- Podsumowanie (55)
Rozdział 3. Jak zostać usługodawcą WSP (57)
- Praktyczne przykłady realizacji usług sieciowych (58)
- EDI (58)
- Koncepcje wymiany danych elektronicznych (59)
- Porównanie EDI i usług sieciowych (60)
- Dostępność usług sieciowych (61)
- Internet i przejrzyste rynki (61)
- Rozwiązania dla małych przedsiębiorstw (62)
- Przejrzysta ekonomia usług sieciowych (63)
- Nowe zastosowania usług sieciowych (63)
- Poszukiwanie nowych możliwości (64)
- Dlaczego jest to tak istotne (65)
- Różni usługodawcy WSP (66)
- Usługi sieciowe dla mniejszych przedsiębiorstw (66)
- Perspektywy (67)
- Dla konsultantów i programistów (67)
- Małe przedsiębiorstwa (68)
- Wielkie korporacje (68)
- Producenci oprogramowania (68)
- Usługodawcy ASP i ISP (69)
- Podsumowanie (69)
Rozdział 4. Konstrukcja usług sieciowych opartych na Javie (71)
- Architektura usług sieciowych (72)
- Komponenty Javy (74)
- Pobranie i instalacja serwera Tomcat (74)
- Pierwsze kroki z serwerem Tomcat (76)
- Budowanie usług (78)
- Zastosowanie stron JavaServer Pages oraz serwletów (78)
- Interfejsy użytkownika (84)
- Narzędzia Java (87)
- Przyszłość usług sieciowych opartych na Javie (88)
- Podsumowanie (89)
Rozdział 5. Przykład prostej usługi sieciowej z zastosowaniem języka Java (91)
- Aplikacja (92)
- Platforma usług sieciowych (93)
- Zestaw narzędzi SOAP (93)
- Parser XML (94)
- Testowanie instalacji (95)
- Wywołanie usługi SOAP (97)
- Deskryptor WSDL dla usługi HelloWorldService (97)
- Generowanie klienta HelloWorldService (98)
- Za kulisami (103)
- Generowanie usług sieciowych (105)
- Publikowanie i wyszukiwanie usług sieciowych (108)
- Podsumowanie (108)
Rozdział 6. Tworzenie usługi sieciowej JSP (109)
- Aplikacja (109)
- Menu (110)
- Tworzenie usługi sieciowej (121)
- Usługa menu restauracji Thai Palace (121)
- Dokument WSDL dla menu (123)
- Klient usługi sieciowej menu restauracji Thai Palace (126)
- Serwer ByteGourmet (132)
- Uruchomienie usługi sieciowej (133)
- Serwlet (134)
- Strony JavaServer Pages (136)
- Podsumowanie (137)
Część II Narzędzia usług sieciowych (139)
Rozdział 7. Koncepcja protokołu SOAP (141)
- Historia SOAP (141)
- Zdalne wywołania RPC a warstwy pośrednie (142)
- RSS, RDF i strony WWW (143)
- Zgłaszanie żądań: XML-RPC (145)
- Od XML-RPC do SOAP (147)
- Podstawy SOAP (149)
- Architektura SOAP (150)
- Bloki i elementy SOAP (151)
- Style kodowania (153)
- Protokoły transportowe (154)
- RPC (154)
- Platforma komunikacyjna (155)
- Zgodność wersji (155)
- Nagłówek (156)
- Komunikat błędu SOAP (157)
- Kodowanie SOAP (158)
- Pola kodujące (158)
- Typy proste (158)
- Typy złożone: struktury (159)
- Typ złożony: tablice (160)
- Protokoły transportowe (162)
- Wiązanie do HTTP (162)
- Wiązania do SMTP (163)
- Załączniki do komunikatu SOAP (164)
- Podsumowanie (165)
Rozdział 8. Podstawy SOAP (167)
- Tworzenie węzłów SOAP (167)
- Samodzielne tworzenie węzła (168)
- Biblioteki SOAP (171)
- Prosta usługa sieciowa: rezerwacja (171)
- Schemat usługi (173)
- Instalacja przykładowej aplikacji (173)
- Prezentacja przykładowej aplikacji (174)
- Śledzenie komunikatów SOAP (177)
- Rekompilacja projektu (178)
- Interfejs administracyjny (181)
- Interfejs publiczny - aspekty projektowania (187)
- Kwestie bezpieczeństwa (187)
- Opóźnienia sieci (188)
- Wydajność (190)
- Niezależność (191)
- Apache SOAP dla RPC (191)
- Tworzenie aplikacji usługodawcy (191)
- Uruchomienie aplikacji usługodawcy (196)
- Wywoływanie aplikacji usługodawcy (199)
- Podsumowanie (205)
Rozdział 9. UDDI (207)
- Znaczenie UDDI dla usług sieciowych (207)
- Podstawy UDDI (208)
- Korzystanie z UDDI (209)
- Standaryzacja (210)
- Typowe zastosowania (211)
- Role UDDI (212)
- Białe strony (212)
- Żółte strony (213)
- Zielone strony (214)
- Podsumowanie (216)
Rozdział 10. Szczegółowa prezentacja UDDI (217)
- Zapytanie: wyszukiwanie pozycji (217)
- find_business (218)
- find_relatedBusiness (221)
- find_binding (221)
- find_service (222)
- find_tModel (223)
- Zapytanie: gromadzenie danych szczegółowych (225)
- get_bindingDetail (225)
- get_businessDetail oraz get_businessDetailExt (226)
- get_serviceDetail (228)
- get_tModelDetail (230)
- Rejestracja (232)
- Uwierzytelnianie (232)
- Zapisywanie i usuwanie typów danych UDDI (232)
- Potwierdzenia (234)
- Replikacja (235)
- Podsumowanie (235)
Rozdział 11. WSDL (237)
- Wprowadzenie do WSDL (237)
- Procesy komunikacyjne (238)
- Typy (241)
- Krótki przegląd schematu XML (242)
- Tworzenie typu Adres dla dokumentu WSDL (247)
- Komunikaty (248)
- Tworzenie komunikatów z zastosowaniem postaci elementowej (249)
- Tworzenie komunikatów z zastosowaniem typów (250)
- Operacje (251)
- Typy operacji (252)
- Tworzenie operacji jednokierunkowej (253)
- Tworzenie operacji typu żądanie/odpowiedź (253)
- Tworzenie powiadomienia (253)
- Tworzenie operacji typu pytanie/odpowiedź (254)
- Typ portu (254)
- Tworzenie typu portu z operacją jednokierunkową (254)
- Wiązanie (255)
- Wiązanie metody mojaMetoda do SOAP z wykorzystaniem HTTP (255)
- Wiązanie metody mojaMetoda do wielu protokołów transportowych (256)
- Port (257)
- Definicja portu (257)
- Usługa (258)
- Deklaracja usługi (258)
- Łączenie typów portu w ramach usługi (259)
- Tworzenie dokumentów WSDL na podstawie klas Javy (260)
- Deklaracja HelloWorldWSDL (260)
- Generowanie pliku WSDL za pomocą serwera AXIS (261)
- Zastosowanie narzędzia Java2WSDL (261)
- Wynik działania Java2WSDL (262)
- Pozostałe opcje Java2WSDL (264)
- Dostęp do usługi za pośrednictwem dokumentu WSDL (265)
- Tworzenie klas pośredniczących WSDL (265)
- Tworzenie klasy pośredniczącej dla HelloWorldWSDL za pomocą WSDL2Java (266)
- Pozostałe opcje WSDL2Java (268)
- Podsumowanie (270)
Część III Pakiet JAX Pack (271)
Rozdział 12. JAXP (273)
- Komponenty XML (273)
- Dokument XML (274)
- Opis typu dokumentu DTD (274)
- Walidacja dokumentu (276)
- Techniki analizy syntaktycznej (276)
- Początki (277)
- Analizator syntaktyczny SAX (Simple API for XML) (277)
- Tworzenie programu obsługi dokumentu (278)
- Korzystanie z parsera SAX (278)
- Analizator syntaktyczny DOM (Document Object Model) (289)
- Tworzenie drzewa XML w pamięci (289)
- Odczyt drzewa XML (290)
- Wyprowadzanie drzewa XML do strumienia wyjściowego (295)
- Operacje na drzewie XML (295)
- XSLT (299)
- Szablony stylów XSL (300)
- Przykład (301)
- JAXP a usługi sieciowe (305)
- Podsumowanie (306)
Rozdział 13. JAXB (307)
- Przygotowanie (307)
- Terminologia JAXB (308)
- Wiązanie schematu XML i klasy (308)
- XJC w działaniu (309)
- Szeregowanie (marshalling) (312)
- Rozszeregowanie (unmarshalling) (313)
- Skaner XML (314)
- Wykorzystanie klas wbudowanych JAXB (317)
- Odczyt dokumentu XML (317)
- Modyfikacja pliku XML (318)
- Zapis dokumentu XML (319)
- Przykład (319)
- Zaawansowane schematy wiązania (321)
- Definiowanie typów podstawowych (323)
- Definiowanie typów pochodnych (323)
- Definiowanie typów wyliczeniowych (324)
- Podklasy klas wygenerowanych (327)
- Podsumowanie (327)
Rozdział 14. JAXR (329)
- Potrzeba istnienia API rejestrów (329)
- Podstawowe klasy JAXR (330)
- Interfejs Connection (330)
- Interfejs RegistryClient (331)
- Interfejs RegistryService (331)
- Model danych JAXR (331)
- Stosowanie JAXR (333)
- Tworzenie połączenia (333)
- Przeszukiwanie rejestru (334)
- Aktualizowanie danych w rejestrze (338)
- Podsumowanie (342)
Rozdział 15. JAXM (343)
- Wprowadzenie do JAXM (343)
- Czym jest, a czym nie jest JAXM (344)
- Obszary zastosowań JAXM (346)
- Architektura (347)
- Modele komunikacji (347)
- Łączniki (347)
- Profile komunikacyjne (349)
- Implementacja (350)
- Układ pakietów (350)
- Obiekty zależne (350)
- Najistotniejsze aspekty prezentowanych przykładów (351)
- Podstawowe czynności (351)
- Połączenia (353)
- Punkty końcowe (354)
- Komunikaty (355)
- Wycieczka po hierarchii komunikatów (356)
- Tworzenie komunikatu (357)
- Klasa SOAPPart (358)
- Komponenty XML (359)
- Nadawcy i odbiorcy komunikatu (368)
- Łączenie wszystkich elementów w całość (370)
- Hello World (371)
- Prosty serwer plików (377)
- Podsumowanie (394)
Rozdział 16. JAX-RPC (395)
- Po co nam kolejny interfejs API? (395)
- Od zastrzeżonych do otwartych interfejsów API (396)
- Zasięg JAX-RPC (396)
- Status JAX-RPC (397)
- Odwzorowanie danych (398)
- Standardowe odwzorowanie dla Javy (398)
- Odwzorowanie nazw elementów (399)
- Odwzorowanie typów XML (404)
- Odwzorowanie usług (405)
- Odwzorowanie usług do Javy (405)
- Odwzorowanie portów do Javy (406)
- Zastosowanie JAX-RPC w tworzeniu aplikacji klienckich (407)
- Wywołania dynamiczne (408)
- Tworzenie węzłów SOAP (409)
- Pułapki prostoty (410)
- Porównanie JAX-RPC i innych technologii rozproszonych (410)
- Różnice między JAX-RPC, RMI, DCOM i CORBA (411)
- Obszary zastosowania JAX-RPC i JAXM (412)
- Podsumowanie (413)
Część IV Dopracowywanie usług sieciowych (415)
Rozdział 17. Zabezpieczenia w usługach sieciowych (417)
- Dlaczego szyfrowanie jest istotne (417)
- Szyfrowanie z kluczem prywatnym (418)
- Szyfrowanie z kluczem publicznym (418)
- Warstwa zabezpieczeń łączy SSL (419)
- Podpisy cyfrowe (420)
- Szyfrowanie w Javie (421)
- Cyfrowe podpisywanie danych (421)
- Szyfrowanie danych (425)
- Zastosowanie SSL i SOAP (428)
- Szyfrowanie w XML (433)
- Podsumowanie (437)
Rozdział 18. Przepływy w usługach sieciowych (WSFL) (439)
- Przepływ w usługach i sprzęganie usług (440)
- Koncepcje modelowania przepływu (441)
- Czynności (442)
- Przepływ sterowania (443)
- Przepływ danych (445)
- Przepływ (446)
- Przepływy jako proces sprzęgania usług sieciowych (446)
- Usługodawcy i ich typy (447)
- Lokatory (448)
- Implementacja czynności zlecanych w outsourcing - eksport (449)
- Udostępnianie przepływów jako usług sieciowych (450)
- Model przepływu jako usługodawca (450)
- Czynności eksportowane (451)
- Operacje zarządzania cyklem życia przepływu, dane wejściowe i wyjściowe przepływu (452)
- Sprzęganie zagnieżdżone (454)
- Przepływy publiczne i prywatne (454)
- Opis zachowania usługi (454)
- Implementacja usługi jako przepływ - przepływy prywatne a przepływy publiczne (455)
- Tworzenie przepływu publicznego (456)
- Modele globalne (457)
- Wtyki (458)
- Modele globalne w WSFL (459)
- Źródła (462)
- Podsumowanie (462)
Rozdział 19. Platforma wywoływania usług sieciowych (WSIF) (463)
- Opis serwera synchronizacji czasu (465)
- Pakiety i ścieżki (465)
- Kod usługi synchronizacji czasu (466)
- Uruchomienie (468)
- Aplikacja kliencka Apache SOAP (469)
- Plik WSDL (472)
- Dynamiczna aplikacja kliencka WSIF (475)
- Port SOAP (476)
- Dynamiczny moduł wywołujący (480)
- Generowanie pniaków Java (481)
- Korzystanie z generatora (482)
- Klasy wygenerowane (482)
- Testowanie usługi (486)
- Port Java (487)
- Zmiany w deskryptorze implementacyjnym WSDL (487)
- Dostęp do portu Java z poziomu aplikacji klienckiej (489)
- Dostęp do portu Java za pomocą dynamicznego modułu wywołującego (489)
- Dostęp do portu Java za pomocą klas wygenerowanych (490)
- Podsumowanie (490)
Część V Implementacja usług sieciowych (491)
Rozdział 20. Zarządzanie magazynem (493)
- Architektura (494)
- Witryna WWW (494)
- Obiekty rozproszone (495)
- Usługa sieciowa (497)
- Magazyn w wersji WWW (498)
- Baza danych (498)
- Dostęp do magazynu ze strony WWW (499)
- Witryna hurtownika (501)
- Kilka uwag na temat projektu (501)
- Usługa Magazyn (504)
- Deskryptor uruchomieniowy (505)
- Witryna sprzedawcy (506)
- Magazyn w sklepie (506)
- Lokalna baza danych (507)
- Aplikacja Sklep (508)
- Kompilacja i uruchamianie projektu (513)
- Instalacja przykładu (514)
- Rekompilacja projektu (515)
- Podsumowanie (519)
Rozdział 21. Handel akcjami - wykorzystanie technologii EJB (521)
- Identyfikacja użytkownika (522)
- Architektura aplikacji (522)
- SOAP i EJB (523)
- Oprogramowanie (523)
- Obiekt SOAP o nazwie StockTrading (524)
- Ziarno sesji Trading (529)
- Ziarna encji (543)
- Przykładowy klient (549)
- Podsumowanie (552)
Rozdział 22. Testowanie usług sieciowych (553)
- Schemat projektowania usług sieciowych (554)
- Schemat optymalizujący wydajność i skalowalność (556)
- Strategie testowania (560)
- Testowanie usług sieciowych przy użyciu programu TestMaker (561)
- Nowa technologia usług sieciowych - nowa metodologia testowania (563)
- Testowanie przeszukujące (564)
- Projektowanie i testowanie zespołowe (564)
- Testowanie jednostkowe (565)
- Testowanie systemowe (566)
- Agenty testujące (567)
- Testowanie skalowalności i wydajności (569)
- Testy dla pojedynczego użytkownika (571)
- Tworzenie agentów testujących za pomocą programu TestMaker (573)
- Języki skryptowe i agenty testujące (574)
- Monitorowanie usług sieciowych w celu zagwarantowania odpowiedniego ich poziomu (581)
- Zasoby (581)
- Podsumowanie (582)
Rozdział 23. Narzędzia do tworzenia usług sieciowych (583)
- Przegląd narzędzi do tworzenia usług sieciowych (584)
- Dostarczenie usługi (585)
- Tworzenie (585)
- Uruchamianie (586)
- Testowanie (586)
- Udostępnianie (586)
- Wykorzystanie usługi (587)
- Wyszukiwanie (587)
- Uzyskiwanie dostępu (587)
- Krótki przegląd narzędzi do tworzenia usług sieciowych (588)
- Tworzenie usługi TemperatureConverter (588)
- Uruchamianie usługi na bazie klasy (590)
- Tworzenie aplikacji internetowej (592)
- Narzędzia do tworzenia usług sieciowych (594)
- Metoda "góra-dół" (595)
- Metoda "dół-góra" (597)
- Metoda "środka" (601)
- Narzędzia do uruchamiania usług sieciowych (602)
- Narzędzia do testowania usług sieciowych (603)
- Narzędzia do udostępniania usług sieciowych (606)
- Narzędzia do wyszukiwania usług sieciowych (607)
- Narzędzia dostępu do usług sieciowych (608)
- Podsumowanie (615)
Rozdział 24. Tworzenie usług sieciowych za pomocą pakietu WebLogic (617)
- Usługi sieciowe w środowisku WebLogic (618)
- Zdalne wywołania procedur (618)
- Wywołania bazujące na komunikatach (619)
- Jak to działa? (619)
- Architektura usług sieciowych na platformie WebLogic (620)
- Żądania SOAP oparte na RPC (621)
- Żądania SOAP bazujące na komunikatach (621)
- Cykl projektowy a środowisko (622)
- Usługa Curmudgeon (624)
- Dokument WSDL dla usługi Curmudgeon (624)
- Kod ziarna dla usługi Curmudgeon (625)
- Uruchamianie EJB na platformie WebLogic (629)
- Kompilowanie ziarna EJB (630)
- Automatyzowanie procesu kompilacji przy użyciu narzędzia Ant (630)
- Testowanie usługi Curmudgeon (633)
- Usługi sieciowe następnej generacji (635)
- Narzędzie WebLogic Workshop (636)
- Obiekty sterujące w programie WebLogic Workshop (636)
- Pliki usług sieciowych Java (.JWS) (637)
- Platforma programu Weblogic Workshop (637)
- Zasoby (639)
- Podsumowanie (640)
Dodatki (641)
Skorowidz (643)