Web Services (SOAP) Ćwiczenie 1

Podobne dokumenty
Zaawansowane aplikacje internetowe - laboratorium

Enterprise JavaBeans (EJB)

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

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

Tworzenie i wykorzystanie usług sieciowych

Aplikacje internetowe i rozproszone - laboratorium

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

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

Aplikacje WWW - laboratorium

Aplikacje internetowe i rozproszone - laboratorium

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

Zaawansowane aplikacje internetowe laboratorium

Zaawansowane aplikacje internetowe

Programowanie Obiektowe GUI

Projektowanie aplikacji internetowych laboratorium

Java EE: JSF + EJB + JPA

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

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

E:\DYDAKTYKA\ZAI\ZWWW\Laboratoria\L07\Java Persistence.doc 2011-lis-24, 17:0 Zaawansowane aplikacje internetowe Laboratorium Java Persistence.

Wielowarstwowe aplikacje internetowe - laboratorium

Aplikacje internetowe i rozproszone - laboratorium

Aplikacje WWW - laboratorium

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

Microsoft.NET: Warstwa dostępu do danych (DAL) w aplikacjach ASP.NET Web Forms

Java EE: JSF + EJB + JPA + CDI + BV

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

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

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

Zaawansowane aplikacje internetowe

Zastosowanie komponentów EJB typu Session

Projektowanie oprogramowania. Warstwa integracji z bazą danych oparta na technologii ORM Platforma Java EE Autor: Zofia Kruczkiewicz

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

Aplikacje WWW - laboratorium

Instrukcja tworzenia aplikacji EE na bazie aplikacji prezentowanej na zajęciach lab.4 z PIO umożliwiająca przez sieć dostęp wielu użytkownikom.

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Aplikacje WWW - laboratorium

Wybierz kategorię Java Web i typ projektu Web Application. Kliknij przycisk Next >.

Wstęp - Prosta aplikacja internetowa w technologii Java EE 5. Programowanie komponentowe 1

1. Czynności przygotowujące aplikację działającą na platformie Java SE Biblioteka5 (należy ją pobrać z załącznika z p.1)

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

Wybrane Działy Informatyki Stosowanej LABORATORIUM 1.

Zaawansowane aplikacje WWW - laboratorium

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

Zaawansowane aplikacje internetowe laboratorium

Przykłady tworzenia aplikacji komponentowych w technologii JavaServer Faces 2.1 na podstawie

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski. Zaawansowane Systemy Decyzyjne. Laboratorium

Aplikacje w środowisku Java

Programowanie obiektowe

Aplikacje WWW - laboratorium

A Zasady współpracy. Ocena rozwiązań punktów punktów punktów punktów punktów

LINQ TO XML. Autor ćwiczenia: Marcin Wolicki

Instrukcja laboratoryjna cz.6

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

Platformy Programowania

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

Aplikacje internetowe laboratorium

Aplikacje internetowe - laboratorium ASP.NET praca z bazą danych

Zaawansowane aplikacje internetowe laboratorium REST

Zaawansowane aplikacje internetowe - laboratorium

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

Ćwiczenia 9 - Swing - część 1

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

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

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

Programowanie wielowarstwowe i komponentowe

RESTful Web Services na platformie Java EE (JAX-RS)

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych

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

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

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

ASP.NET MVC. Podstawy. Zaawansowane programowanie internetowe Instrukcja nr 3

Laboratorium 1. Wzorce oprogramowania lab1, Zofia Kruczkiewicz

PWSG Ćwiczenia 12. Wszystkie ukończone zadania należy wysłać na adres: lub

Zastępstwa Optivum. Jak przenieść dane na nowy komputer?

2. Podstawy narzędzia Application Builder, budowa strony, kreatory aplikacji

Laboratorium 10 - Web Services

Instrukcja laboratoryjna cz.2

Aplikacje www laboratorium

Aplikacje internetowe - laboratorium

Laboratorium 1 Wprowadzenie do PHP

Instalacja aplikacji komunikacyjnej modułu pl.id

Wykład 4 Delegat (delegate), właściwości indeksowane, zdarzenie (event) Zofia Kruczkiewicz

Aplikacje internetowe - laboratorium

Instrukcja pobrania i instalacji. certyfikatu Microsoft Code Signing. wersja 1.4

Aplikacje WWW - laboratorium

Programowanie komponentowe 5

Informatyka I : Tworzenie projektu

Katalog książek cz. 3: Web Service

Testowanie I. Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego.

Instrukcja laboratoryjna cz.3

Instrukcja instalacji nośników USB w systemie internetowym Alior Banku

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

Platforma.NET. Laboratorium nr 1 Podstawy języka C#

1 LINQ. Zaawansowane programowanie internetowe Instrukcja nr 1

Bazodanowe usługi sieciowe w technologii ASP.NET. dr inż. Tomasz Tatoń

RESTful WCF Services. Autor ćwiczenia: Piotr Ostrowski. Kroki ćwiczenia : 1. Utworzenie nowego projektu RESTful WCF.

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

Transkrypt:

Web Services (SOAP) Ćwiczenia dotyczące platformy Java EE zostały przygotowane z myślą o środowisku NetBeans w wersji 8.x (do pobrania z http://www.netbeans.org/). Do wykonania ćwiczeń dotyczących platformy Microsoft.NET potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2015. Ćwiczenie 1 Celem ćwiczenia jest przygotowanie usługi sieciowej w oparciu o klasę Java oznaczoną adnotacjami. 1. Uruchom środowisko NetBeans. 2. Utwórz nowy projekt typu Web Application z kategorii Java Web. 3. W kreatorze nowej aplikacji zmień nazwę aplikacji na EvenOddApp, jako serwer wybierz GlassFish, a dla pozostałych opcji pozostaw wartości domyślne. 4. W utworzonym projekcie utwórz usługę sieciową wybierając z menu kontekstowego dla węzła projektu opcję New Web Service. 5. Jako nazwę komponentu web service podaj EvenOddWebService a jako nazwę pakietu evenodd. Pozostaw wybraną opcję Create Web Service from Scratch (alternatywą jest publikowanie istniejącego sesyjnego komponentu EJB jako usługi sieciowej).

6. Edytując wygenerowaną klasę Java w trybie Design, korzystając z przycisku Remove Operation usuń operacje, które dodał kreator (jeśli jakieś są zdefiniowane w usłudze). Następnie korzystając z przycisku Add Operation dodaj dwie metody iseven i isodd przyjmujące parametr o nazwie val typu int i zwracające wartość boolean.

7. Przełącz się na tryb edycji źródła klasy. Zaobserwuj adnotacje związane z wykorzystaniem klasy jako usługi sieciowej dodane przez kreator.

8. Zaimplementuj samodzielnie metody iseven() i isodd(), tak aby pierwsza z nich zwracała prawdę dla liczb parzystych, a druga dla nieparzystych. 9. Uruchom aplikację np. klawiszem F6. 10. Przejdź do strony umożliwiającej przetestowanie utworzonej usługi wybierając dla niej z menu kontekstowego w drzewie projektów opcję Test Web Service. 11. Przetestuj obie metody usługowe dla różnych wartości parametrów. Zapamiętaj adres pliku WSDL opisującego usługę (będzie wykorzystany w kolejnych ćwiczeniach). 12. Pozostaw działającą aplikację i środowisko NetBeans. Ćwiczenie 2 Celem ćwiczenia jest przygotowanie klienta usługi sieciowej w postaci konsolowej aplikacji Java. 1. Utwórz nowy projekt typu Java Application z kategorii Java. Jako nazwę projektu podaj EvenOddConsole. Pozostałe opcje tworzenia projektu pozostaw domyślne. 2. W nowo utworzonym projekcie uruchom kreator Web Service Client z kategorii Web Services.

3. Klient usługi sieciowej jest generowany na podstawie wskazanego pliku WSDL opisującego usługę. Plik ten można wskazać podając jego lokalizację na lokalnym dysku (jeśli został pobrany na dysk lokalny) lub zdalny URL. Jeśli usługa została zaimplementowana w projekcie, który jest aktualnie otwarty w NetBeans istnieje też możliwość wyboru docelowej usługi z listy usług znalezionych w otwartych projektach (odpowiedni URL pliku WSDL zostanie w tym wypadku ustawiony przez kreator). Aby przetestować ogólny schemat postępowania, wybierz opcję WSDL URL i wklej adres zapamiętany w poprzednim ćwiczeniu i kliknij Finish. 4. Rozwiń gałąź Web Service References i zobacz wynik działania kreatora. Rzeczywiste wygenerowane pliki możesz obejrzeć przełączając się na panel Files i rozwijając w tym panelu gałąź build w ramach projektu. 5. Przełącz się z powrotem na panel Projects i przejdź do edycji klasy głównej programu. 6. Korzystając z menu kontekstowego edytora kodu klasy uruchom kreator kodu Insert Code Call Web Service Operation wskazując iseven jako operację usługi do wywołania.

7. Obejrzyj kod metody, która jest efektem działania wywołanego w poprzednim kroku kreatora. Umożliwia ona wywołanie operacji zdalnej usługi poprzez wywołanie pomocniczej prywatnej metody klasy. 8. Dodaj w metodzie main() głównej klasy programu kilka wywołań utworzonej kreatorem metody dla różnych wartości parametru, wyświetlając zwracane wyniki na konsoli. Ćwiczenie 3 Celem ćwiczenia jest przygotowanie klienta usługi sieciowej w postaci webowej aplikacji Java. 1. Utwórz nowy projekt typu Web Application z kategorii Java Web. Jako nazwę projektu podaj EvenOddWeb. Pozostałe opcje tworzenia projektu pozostaw domyślne. 2. W nowo utworzonym projekcie uruchom kreator Web Service Client z kategorii Web Services. Tym razem do wskazania pliku WSDL wykorzystywanej usługi sieciowej możesz użyć opcji wyboru usługi z otwartego projektu. 3. Przejdź do edycji kodu strony index.html i zastąp zawartość elementu <body> poniższym kodem: <form action="isevenservlet"> Enter an integer: <input type="text" name="num"> <input type="submit" value="test"> </form>

4. Utwórz w projekcie nowy serwlet. Jako nazwę jego klasy podaj IsEvenServlet, a jako nazwę pakietu web. Zaakceptuj zaproponowane przez kreator mapowanie serwletu na adres URL. 5. W klasie serwletu dodaj wywołanie metody iseven usługi sieciowej korzystając z menu kontekstowego Web Service Insert Code Call Web Service Operation. 6. Obejrzyj zmiany w kodzie będące efektem działania wywołanego przed chwilą kreatora: wstrzyknięcie referencji do usługi oraz metodę pośredniczącą w wywołaniu operacji usługi z wykorzystaniem tej referencji. Zwróć uwagę na komentarz zawarty w kodzie metody (zignorujemy go w ćwiczeniu). 7. W ciele metody processrequest() serwletu w miejsce instrukcji wypisującej nagłówek <h1> wstaw poniższy kod: int val = Integer.parseInt(request.getParameter("num")); boolean result = iseven(val); if (result) out.println("number "+val+" is even."); else out.println("number "+val+" is odd."); 8. Uruchom i przetestuj aplikację.

Ćwiczenie 4 Celem ćwiczenia jest utworzenie w technologii usługi WCF umożliwiającej obliczenie całkowitego kosztu paliwa dla podanych wartości ceny litra benzyny, długości trasy w km i spalania w litrach na 100 km. 1. Uruchom środowisko Microsoft Visual Studio. 2. Utwórz projekt typu WCF Service Application w języku Visual C#. a) Z menu głównego wybierz File New Project. Wybierz szablon WCF Service Application z kategorii Visual C#/WCF. Zmodyfikuj zaproponowaną nazwę projektu na WcfServiceSpalanie. Kliknij przycisk OK. b) Obejrzyj kod wygenerowanej usługi (interfejs i klasa) zwracając uwagę na sposób implementacji przykładowych operacji działających na danych typów prostych i złożonych. c) Uruchom utworzoną kreatorem usługę na serwerze (opcja View in Browser z menu kontekstowego węzła usługi (*.svc) w projekcie). Obejrzyj stronę usługi w przeglądarce, a także wygenerowane wraz z usługą pliki WSDL (w wersji z zewnętrznymi plikami XML Schema oraz ze schematami XML zawartymi w pojedynczym pliku WSDL). Odszukaj sposób reprezentacji w XML danych wejściowych i wyjściowych obu operacji usługi. 3. Zaimplementuj serwis obliczający koszt paliwa na podstawie odległości w km, ceny litra paliwa i spalania wyrażonego w litrach na 100 km. a) Utwórz w ramach projektu nową usługę WCF (Add Add New Item WCF Service). Zmień zaproponowaną przez kreator nazwę usługi na Spalanie.svc. Otwórz do edycji utworzone przez kreator pliki z interfejsem i klasą usługi. b) Zastąp w interfejsie i klasie metodę DoWork() metodą Koszt() o odpowiedniej sygnaturze (wszystkie parametry i wynik powinny być typu double): public double koszt(double cena, double odleglosc, double spalanie) { return...; } c) Zapisz wszystkie zmiany (np. File Save All). d) Uruchom Web Service i obejrzyj w przeglądarce jego stronę domową i dostępne z niej pliki WSDL. Ćwiczenie 5 Celem ćwiczenia jest utworzenie klienta serwisu utworzonego w poprzednim ćwiczeniu. Aplikacja kliencka będzie miała postać konsolowej aplikacji w języku C#. 1. Dodaj do solucji z projektem usługi WCF nowy projekt typu Windows/Console Application w języku Visual C#. Nazwij go WcfConsoleClient. 2. Dodaj do projektu aplikacji konsolowej referencję do usługi WCF znajdującej się w drugim projekcie.

a) W panelu Solution Explorer z menu kontekstowego dla węzła projektu aplikacji konsolowej wybierz opcję Add Service Reference. b) W oknie kreatora referencji do usługi kliknij przycisk Discover. Obejrzyj znalezione usługi i ich operacje. Odszukaj operację Koszt. Zaznacz usługę dotyczącą spalania i kliknij przycisk OK. c) Przejdź do edycji metody Main aplikacji konsolowej i dodaj w niej wywołanie usługi poprzez utworzoną referencję wg poniższego schematu: // utworzenie obiektu proxy z wykorzystaniem referencji do usługi // w miejsce kropek należy wpisać nazwę wygenerowanej klasy // klienta poprzedzoną przestrzenią nazw podaną w kreatorze // referencji do usługi... client = new...(); try {... // wywołanie operacji usługi poprzez obiekt proxy // i wyświetlenie na konsoli obliczonego kosztu // dla przykładowych danych wejściowych client.close(); } catch (Exception) { client.abort(); throw; } d) Uruchom aplikację konsolowego klienta usługi.

Ćwiczenie 6 (do samodzielnego wykonania) Celem ćwiczenia jest przygotowanie webowej aplikacji Java w technologii JSF jako klienta usługi WCF. 1. Pozostaw działające środowisko Microsoft Visual Studio. 2. Uruchom środowisko NetBeans i utwórz w nim projekt aplikacji webowej wykorzystującej JSF. 3. Utwórz w projekcie referencję do usługi wykorzystując jej plik WSDL, odwołując się do niego przez URL. 4. Utwórz odpowiedni formularz na stronie JSF (pola do wprowadzenia danych wejściowych, przycisk do wywołania usługi oraz komponent do wyświetlenia wyniku obliczeń). 5. Utwórz bean CDI, powiąż go z komponentami strony i dodaj w nim wywołanie operacji zdalnej usługi.