Zaawansowane aplikacje internetowe - laboratorium Web Services (część 2).



Podobne dokumenty
Zaawansowane aplikacje internetowe laboratorium

Wielowarstwowe aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 1).

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Materiały oryginalne: ZAWWW-2st1.2-l11.tresc-1.0kolor.pdf. Materiały poprawione

Zaawansowane aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Aplikacje WWW - laboratorium

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Aplikacje internetowe - laboratorium

Aplikacje WWW - laboratorium

Zaawansowane aplikacje internetowe

Zaawansowane aplikacje WWW - laboratorium

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

2) W wyświetlonym oknie należy zaznaczyć chęć utworzenia nowej aplikacji (wygląd okna może się różnić od powyższego); kliknąć OK

Web Services (SOAP) Ćwiczenie 1

Zaawansowane aplikacje internetowe laboratorium

Aplikacje WWW - laboratorium

Instrukcja instalacji i konfiguracji Karty EDGE/GPRS SonyEricsson GC85

Laboratorium - Archiwizacja i odzyskiwanie danych w systemie Windows XP

Aplikacje internetowe i rozproszone - laboratorium

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

Katedra Architektury Systemów Komputerowych Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej

Instrukcja instalacji programu ARPunktor wraz z serwerem SQL 2005 Express

Nowe notowania epromak Professional

Zaawansowane aplikacje internetowe

11. Rozwiązywanie problemów

1. Uruchomić i skonfigurować środowisko tworzenia aplikacji i serwer aplikacji.

Instalacja Webroot SecureAnywhere przy użyciu GPO w Active Directory

Instalacja NOD32 Remote Administrator

R o g e r A c c e s s C o n t r o l S y s t e m 5

Projektowanie aplikacji internetowych laboratorium

Laboratorium - Użycie narzędzia Przywracanie systemu w systemie Windows 7

Pracownia internetowa w szkole ZASTOSOWANIA

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows XP

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows Vista

Przewodnik po Notowaniach Statica mdm 4

Instrukcja 10 Laboratorium 13 Testy akceptacyjne z wykorzystaniem narzędzia FitNesse

PRZEWODNIK PO SERWISIE BRe BROKERS Rozdział 6

AXIS2 - tworzenie usługi sieciowej i klienta Axis Data Binding. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak

Programowanie Obiektowe GUI

Problemy techniczne SQL Server

Współpraca z platformą Emp@tia. dokumentacja techniczna

Ćwiczenie 1. Kolejki IBM Message Queue (MQ)

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

PekaoBIZNES 24 Szybki START. Przewodnik dla Użytkowników z dostępem podstawowym

Instalacja platformy Magento CE wersja szybka

5.6.2 Laboratorium: Punkty przywracania

Synchronizator plików (SSC) - dokumentacja

Enterprise JavaBeans (EJB)

Windows Server 2008 Standard Str. 1 Ćwiczenia. Opr. JK. I. Instalowanie serwera FTP w Windows Server 2008 (zrzuty ekranowe z maszyny wirtualnej)

Laboratorium - Konfigurowanie zapory sieciowej systemu Windows 7

INSTALACJA SERWERA LOKALNEGO TYPU WAMP NA PRZYKŁADZIE PAKIETU KRASNAL SERV 2.7

Instalacja VPN Check Point Mobile Apple macos Hight Sierra (v )

Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami

Laboratorium - Poznawanie FTP

Ko n f i gura cja p ra cy V ISO z bazą SQL S e rve r

Opis przykładowego programu realizującego komunikację z systemem epuap wykorzystując interfejs komunikacyjny "doręczyciel"

Instrukcje dotyczące systemu Windows w przypadku drukarki podłączonej lokalnie

Nowe notowania epromak Professional

Państwowa Wyższa Szkoła Zawodowa w Gorzowie Wlkp. Laboratorium architektury komputerów

Instrukcje dotyczące systemu Windows w przypadku drukarki podłączonej lokalnie

Microsoft.NET: LINQ to SQL, ASP.NET AJAX

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum.

Instrukcja instalacji Control Expert 3.0

Laboratorium - Udostępnianie folderu, tworzenie grupy domowej i mapowanie dysku sieciowego w Windows 7

Uwaga: NIE korzystaj z portów USB oraz PWR jednocześnie. Może to trwale uszkodzić urządzenie ZyWALL.

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox

Konfiguracja i przygotowanie środowiska do współpracy z infrastrukturą PL-Grid

Instrukcja instalacji

Załącznik 1 instrukcje instalacji

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Pracownia internetowa w każdej szkole (edycja jesień 2005)

Programowanie komponentowe. Przykład 1 Bezpieczeństwo wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Laboratorium - Kopia zapasowa rejestru i jego odzyskiwanie w Windows XP

Pracownia internetowa w szkole podstawowej (edycja jesień 2005)

Laboratorium - Udostępnianie folderu i mapowanie dysku sieciowego w systemie Windows XP

Laboratorium - Użycie narzędzia Przywracanie systemu w systemie Windows XP

Exchange 2007 Konfiguracja protokołu SSL/TLS w serwerze pocztowym Exchange 2007 wersja 1.1 UNIZETO TECHNOLOGIES S.A.

Instrukcja instalacji aplikacji Comarch Smart Card ToolBox dla urządzeń kryptograficznych.

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

Laboratorium - Konfiguracja zapory sieciowej systemu Windows Vista

Ćwiczenie dotyczące platformy Java EE zostało przygotowane z myślą o środowisku NetBeans w wersji 7.3 (do pobrania z

Aplikacje WWW - laboratorium

Instalacja i konfiguracja IIS-a na potrzeby dostępu WEBowego/Secure

Jak skonfigurować bezpieczną sieć bezprzewodową w oparciu o serwer RADIUS i urządzenia ZyXEL wspierające standard 802.1x?

6. Powtórz kroki z punktu 5. dla strony sorry.jsp, zmieniając jedynie treść wyświetlanego tekstu ( Niestety zamiast Witaj )

Programowanie w Javie

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Procedury techniczne modułu Forte Kontroling. Raportowanie danych w MS Excel - Konfiguracja IIS na Windows oraz wykonanie importu

Laboratorium 1 Wprowadzenie do PHP

System Zdalnej Obsługi Certyfikatów Instrukcja użytkownika

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Internet Information Service (IIS) 7.0

Wykład 3 Inżynieria oprogramowania. Przykład 1 Bezpieczeństwo(2) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka

Problemy techniczne SQL Server. Jak odblokować porty na komputerze-serwerze, aby umożliwić pracę w sieci?

Instrukcja konfiguracji funkcji skanowania

Transkrypt:

Zaawansowane aplikacje internetowe - laboratorium Web Services (część 2). Celem ćwiczenia jest przygotowanie prostej aplikacji prezentującej technologię usług sieciowych (ang. Web Services). Przygotowana klasa języka Java zostanie opublikowana w postaci usługi sieciowej i udostępniona na zewnątrz przez osadzenie w serwerze aplikacji. Dodatkowo, przygotowany zostanie klient usługi testujący jej poprawność. Do wykonania ćwiczenia potrzebne jest zintegrowane środowisko Developer 10.1.3 (do pobrania z http://otn.oracle.com). 1. Uruchom narzędzie JDeveloper 2. Jeśli nie ukończyła(e)ś laboratorium Web Services (część 1) i nie posiadasz jeszcze aplikacji, to wykonaj kroki 2 i 3 z laboratorium Web Services (część 1). 3. Kliknij prawym przyciskiem myszy na ikonie aplikacji Laboratoria i z menu kontekstowego wybierz New Project. Rozwiń gałąź kategorii General i zaznacz kategorię Projects. W prawym oknie zaznacz element Empty Project. Kliknij przycisk OK.

4. Wpisz nazwę projektu Web Services 2 i kliknij przycisk OK. 5. Kliknij prawym przyciskiem myszy na ikonie projektu Web Services 2. Z menu kontekstowego wybierz opcję New W oknie kategorii zaznacz gałąź General. Z listy dostępnych elementów w oknie po prawej stronie wybierz Java Class. Kliknij przycisk OK.

6. Pierwszym krokiem w tworzeniu usługi sieciowej będzie zdefiniowanie własnej klasy reprezentującej wyjątek polegający na niepoprawnym wywołaniu usługi, np. poprzez podanie jako parametrów liczb ujemnych albo liczb nie będących liczbami całkowitymi. Wpisz nazwę klasy: WrongArgumentsException, nazwę pakietu: webservices, nazwę nadklasy: java.lang.exception. Kliknij przycisk OK. 7. Plik WrongArgumentsException.java został automatycznie załadowany do edytora. Uzupełnij plik poniższym kodem. package webservices; public class WrongArgumentsException extends Exception { public WrongArgumentsException(String message) { super(message);

8. Programy stanowiące usługi sieciowe powinny być szczególnie dobrze dokumentowane ze względu na to, że ich głównymi użytkownikami są użytkownicy zdalni. Stąd, na projektant(k)ach usług sieciowych ciąży obowiązek starannego opisywania API. W przypadku języka Java najbardziej odpowiednim narzędziem jest Javadoc. Uzupełnij kod pliku WrongArgumentsException.java o komentarze Javadoc. Przykładowa wersja finalna pliku może wyglądać tak. package webservices; /** * The class <code>wrongargumentsexception</code> is a form * of <code>throwable<code> and indicates the condition when input * parameters for the Web Service are incorrect. * * @author Mikolaj Morzy * @version 0.1 */ public class WrongArgumentsException extends Exception { /** * Constructs a WrongArgumentsException with the specified detail * message. * * @param message the message describing this particular exception. */ public WrongArgumentsException(String message) { super(message); 9. Kliknij prawym przyciskiem myszy na ikonie projektu Web Services 2 i z menu kontekstowego wybierz New, zaznacz kategorię General i wybierz element Java Class. Kliknij przycisk OK. Wprowadź nazwę klasy: EuclideanAlgorithm oraz nazwę pakietu: webservices. Kliknij przycisk OK.

10. Do znajdowania największego wspólnego podzielnika dwóch liczb wykorzystamy algorytm Euklidesa (http://en.wikipedia.org/wiki/euclids_algorithm). Wprowadź do pliku poniższy kod, nie zapomnij o udokumentowaniu poszczególnych elementów. package webservices; /** * The <code>euclideanalgorithm</code> class is an implementation * of the well-known algorithm attributed traditionally to Euclid. * The algorithm takes as input two positive integers and computes * the greatest common divisor of the two. The first appearance of * the algorithm dates back to 300 BC in Euclid's <i>elements</i>. * * @author Mikolaj Morzy * @version 0.1 */ public class EuclideanAlgorithm { /** * Computes the greatest common divisor of the two * input positive integers * * @param a The first number * @param b The second number * @return The greatest common divisor of the input parameters * @throws WrongArgumentsException If one of the parameters * is not positive, or when input parameters are not integers */ public int GreatestCommonDivisor(String a, String b) throws WrongArgumentsException { int i, j; try { i = Integer.parseInt(a); j = Integer.parseInt(b); catch (NumberFormatException e) { throw new WrongArgumentsException("Parameters must be integers"); if ((i < 0) (j < 0)) throw new WrongArgumentsException("Parameters must be positive"); while (i!= j) if (i > j) i -= j; else j -= i; return i;

11. W nawigatorze obiektów rozwiń gałąź reprezentującą projekt Web Services 2, a następnie rozwiń gałąź Application Sources. Zaznacz węzeł reprezentujący pakiet webservices. Z menu głównego wybierz Run Javadoc webservices. Po zakończeniu generowania dokumentacji w oknie dziennika (u dołu ekranu) kliknij na odnośnik View Documentation. Ekran komputera powinien wyglądać teraz tak. 12. W kolejnym kroku udostępnimy stworzoną klasę EuclideanAlgorithm (wraz z pomocniczą klasą WrongArgumentsException) w postaci usługi sieciowej. Kliknij prawym przyciskiem myszy na ikonie pliku EuclideanAlgorithm.java i z menu kontekstowego wybierz opcję Create J2EE Web Service. Wybierz wersję J2EE 1.4 i kliknij przycisk OK.

13. Podaj nazwę usługi: EuclideanWebService. Upewnij się, że jest włączona opcja Autogenerate Service Endpoint Interface. Kliknij przycisk Zakończ (pozostałe parametry usługi sieciowej pozostają domyślne). 14. Zauważ, że w nawigatorze obiektów zmieniła się ikona reprezentująca plik EuclideanAlgorithm.java, a zamiast tego pojawiła się ikona reprezentująca całą usługę. W celu obejrzenia całej zawartości usługi zaznacz tę ikonę i z menu głównego wybierz View Structure.

15. Kolejny krok to konfiguracja serwera aplikacji, w którym zostanie zainstalowana usługa sieciowa. Wykorzystamy do tego celu serwer OC4J dostarczany razem z narzędziem JDeveloper. Otwórz okno MS-DOS i przejdź do katalogu %JDEV_HOME%\j2ee\home\config. Domyślna konfiguracja serwera aplikacji OC4J posiada drobny błąd, który musimy skorygować. Otwórz plik server.xml i znajdź w nim znacznik <java-compiler>. Dodaj wewnątrz znacznika atrybut o nazwie bindir i wartości wskazującej na katalog zawierający kompilator javac.exe. Przykładowo, wpis w pliku server.xml mógłby wyglądać tak <java-compiler name="javac" in-process="false" options="-j-xmx1024m -encoding UTF8" bindir="c:\program Files\Java\jdk1.5.0_07\bin" extdirs="c:\program Files\Java\jre1.5.0_07\lib\ext" /> 16. Przejdź do katalogu %JDEV_HOME%\j2ee\home i uruchom serwer aplikacji OC4J przez wydanie poniższego polecenia. Uwaga: przy pierwszym uruchomieniu serwera aplikacji nastąpi automatyczna instalacja wielu komponentów, dodatkowo instalator może się zapytać o hasło dla administratora. Proszę wówczas podać wybrane przez siebie hasło i je potwierdzić. C:\> java jar oc4j.jar

17. Sprawdź, czy serwer aplikacji faktycznie się uruchomił poprawnie. W tym celu otwórz przeglądarkę i przejdź do adresu http://localhost:8888 18. Wróć do narzędzia JDeveloper. W nawigatorze obiektów (okno z lewej strony ekranu) przejdź na zakładkę Connections (alternatywnie, z menu głównego wybierz View Connection Navigator). Kliknij prawym przyciskiem myszy na ikonie Application Server i z menu kontekstowego wybierz opcję New Application Server Connection. W pierwszym oknie asystenta kliknij przycisk Dalej >. W drugim oknie asystenta wpisz nazwę połączenia: LocalAppServerConnection oraz typ połączenia: Autonomiczny OC4J 10g 10.1.3. Kliknij przycisk Dalej >.

19. W kolejnym kroku wpisz hasło administratora serwera aplikacji OC4J. Kliknij przycisk Dalej >. 20. W trzecim kroku asystenta pozostaw wszystkie wartości domyślne (lokalny serwer, brak ścieżki URL, domyślny port RMI. Kliknij przycisk Dalej >. W ostatnim kroku kliknij przycisk Test Connection. Kliknij przycisk Zakończ.

21. Wróć do okna nawigatora aplikacji (główne menu View Application Navigator). Rozwiń gałąź Resources i kliknij dwukrotnie na pliku WebServices.deploy stanowiącym deskryptor instalacji usługi sieciowej na serwerze aplikacji. Przejdź do gałęzi File Groups WEB-INF/classes Filters i dołącz do instalacji plik WrongArgumentsException.class. Kliknij przycisk OK. 22. Kliknij prawym przyciskiem myszy na pliku WebServices.deploy i z menu kontekstowego wybierz Deploy to LocalAppServerConnection. W oknie które się pojawi kliknij przycisk OK. Poczekaj na zakończenie procesu instalacji (możesz obserwować postęp instalacji w oknie dziennika u dołu ekranu).

23. Wróć do okna przeglądarki i przejdź do adresu http://localhost:8888/em. Zaloguj się do serwisu jako administrator serwera aplikacji. Z głównego ekranu aplikacji wybierz odnośnik Web Services. 24. Kliknij przycisk Test Service. Na kolejnym ekranie kliknij przycisk Test Web Service. W przeglądarce zostanie otwarty domyślnie wygenerowany punkt dostępowy do usługi sieciowej.

25. Odnośnik Service Description prowadzi do pliku WSDL opisującego naszą usługę sieciową. Istnieje także możliwość pobrania pieńka (ang. stub) do usługi sieciowej przygotowanego w języku JavaScript. Dodatkowo, punkt dostępowy umożliwia przetestowanie usługi sieciowej. Kliknij na odnośnik GreatestCommonDivisor, zaznacz pola wyboru przy obu parametrach i wpisz wartości testowe, 100 i 725. 26. Kliknij przycisk Preview SOAP. Obejrzyj postać koperty SOAP która zostanie wysłana do usługi sieciowej. Kliknij przycisk Invoke i obejrzyj zwróconą odpowiedź.

27. Powróć do okna umożliwiającego podawanie parametrów wywołania usługi sieciowej. Wpisz niepoprawny parametr, np. -5. Obejrzyj uzyskany wynik.