Nexto.API. Przykładowy klient Java 1.6 do systemu zamówień NextoAPI. Przygotował Rafał Ozga 2004-2015 e-kiosk S.A. Maj 2015,



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

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

Nexto.API. Dokumentacja techniczna dla partnerów. Przygotował Rafał Ozga e-kiosk S.A. Maj 2015,

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

Dokumentacja kompilacji źródeł aplikacji 1.0

INSTRUKCJA UŻYTKOWANIA STRONY DLA PODSTAWOWEGO UŻYTKOWNIKA

Wieloplatformowe aplikacje sieciowe. dr inż. Juliusz Mikoda mgr inż. Anna Wawszczak

Dokumentacja techniczna API systemu SimPay.pl

JAX-RS czyli REST w Javie. Adam Kędziora

Ćwiczenie 1. Kolejki IBM Message Queue (MQ)

Wdrożenie modułu płatności eservice. dla systemu Gekosale 1.4

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

INSTRUKCJA OBSŁUGI PANELU ADMINISTRACYJNEGO MÓJ DOTPAY v0.1

Podręcznik Integracji

Instrukcja uruchomienia usługi KurJerzyAPI dla OsCommerce 2.2

PROGRAM PARTNERSKI.

Dokumentacja panelu Klienta

Instrukcja użytkownika aplikacji npodpis r.

BOŚBank24. Instrukcja instalacji i konfiguracji podpisu elektronicznego Szafir wydawanego przez KIR S.A. BANKOWOŚĆ ELEKTRONICZNA DLA FIRM

OPCJE DOSTAWY W SERWISIE WIRTU.PL

Integracja GlobKurier.pl - SoteShop. Instrukcja wdrożenia i konfiguracji

Szczegóły i informacje. PayPal/CashBill. Integracja Płatności PayPal z Płatnościami CashBill

Dostosowanie środków dostępu użytkowanych w bankowości internetowej. do wymogów silnego uwierzytelniania (SCA)

Przelewy24 Wirtualny Koszyk

Problemy techniczne. Jak zainstalować i zarejestrować program Optivum?

Instrukcja Integracja z Arena.pl. Wersja z 19/10/2018. Copyright Zakupteraz.pl

Kolejkowanie wiadomości Standard MQ (JMS)

Twoje potrzeby. Nasze rozwiązania.

Dokumentacja instalacji aktualizacji systemu GRANIT wydanej w postaci HotFix a

WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.

Instrukcja instalacji i konfiguracji podpisu kwalifikowanego dla systemu bankowości elektronicznej

PŁATNOŚCI. w Magento 2.x. Wersja: 1.1

Wdrożenie modułu płatności eservice dla systemu PrestaShop

Internetowa Wymiana Dokumentów - wersja demonstracyjna. Integracja Comarch ERP ifaktury24 z Comarch ERP Optima

Zaawansowane aplikacje internetowe - laboratorium Architektura CORBA.

emszmal 3: Automatyczne księgowanie przelewów w sklepie internetowym Magento (plugin dostępny w wersji ecommerce)

Połączenie aplikacji mobilnej z Facebookiem

MS Windows Vista. Spis treści. Autor: Jacek Parzonka, InsERT

Założenia do ćwiczeń: SQL Server UWM Express Edition: \SQLEXPRESS. Zapoznaj się ze sposobami użycia narzędzia T SQL z wiersza poleceń.

Sklep Internetowy (HTML/xHTML, CSS, JavaScript, PHP, MySQL)

OPCJE DOSTAWY DOSTĘPNE W SERWISIE LOJALNI24.PL

Uzyskanie zaświadczenia o niekaralności przez internet

Aplikacja npodpis do obsługi certyfikatu (instrukcja użytkownika)

Spis treści. 1. Wstęp 2. Rejestracja 3. Logowanie 4. Moje konto 5. Program poleconych 6. Narzędzia Wydawcy 7. Zakończenie

Instrukcja obsługi tabletu.

Wdrożenie modułu płatności eservice. dla systemu PrestaShop

REGULAMIN ŚWIADCZENIA USŁUG DROGĄ ELEKTRONICZNĄ

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

Integracja z pocztą Gmail. Integracja Poczta Google. Wersja 1.0 SPIS TREŚCI

Enova.Loyalty Program lojalnościowy

Dokumentacja panelu Klienta

Instrukcja użytkownika aplikacji npodpis r.

Ćw. I. Środowisko sieciowe, połączenie internetowe, opcje internetowe

Aplikacja serwerowa Platformy Prezentacyjnej Opis produktu

Instrukcja użytkownika. Panel Administratora CreamCRM

Aplikacja kliencka na Tablety z systemem Android. Instrukcja instalacji

Instrukcja procesu aktywacji oraz obsługi systemu Banku Internetowego dla BS Mikołajki

Dokumentacja instalacji aktualizacji systemu GRANIT wydanej w postaci HotFix a

Aplikacja npodpis do obsługi certyfikatu

SERWIS INTERNETOWY GRUPY EUROPA. Instrukcja użytkownika

Tworzenie i wykorzystanie usług sieciowych

Instrukcja aktywacji i instalacji Certum Code Signing

Tworzenie wersji demonstracyjnych enova365 na potrzeby prezentacji u Klienta

Dokumentacja smsapi wersja 1.4

Aplikacja npodpis do obsługi certyfikatu

Wdrożenie modułu płatności eservice. dla systemu Magento

Wprowadzenie do technologii Web Services: SOAP, WSDL i UDDI

INSTRUKCJA instalacji aplikacji elisty.pl

INSTRUKCJA INSTALACJI PŁATNOŚCI TRANSFERUJ.PL

Po otrzymaniu maila zapraszającego do udziału w korzystaniu z aplikacji ProfiAuto Usługi dla Serwisu, należy użyć przycisku Aktywuj aplikację.

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

Java Server Faces - wprowadzenie

Technologie internetowe laboratorium nr 4. Instalacja i uruchomienie usługi sieciowej w serwerze Tomcat/AXIS

Podejście obiektowe do budowy systemów rozproszonych

Remote Method Invocation 17 listopada 2010

Java RMI. Dariusz Wawrzyniak 1. Podejście obiektowe do budowy systemów rozproszonych. obiekt. interfejs. kliencka. sieć

A. Schematy funkcjonowania dla CBP... 2

Profesjonalne Zarządzanie Drukiem

Instrukcja składania wniosku o dofinansowanie w systemie informatycznym IP na potrzeby konkursu nr 1/1.1.1/2015

Instrukcja użytkownika. Aplikacja dla Magento

Wniosek w trybie PL. W pierwszym oknie można przeczytać, jak wygląda proces oraz wybrać sposób zawarcia umowy.

Prezentacja portalu INTEGRACJA APLIKACJI E-COMMERCE AUTOMATYZACJA PROCESÓW

Remote Method Invocation 17 listopada Dariusz Wawrzyniak (IIPP) 1

Instrukcja instalacji usługi Sygnity SmsService

Zarządzanie Infrastrukturą IT. Jak ręcznie utworzyć instancję EAUDYTORINSTANCE na SQL Serwerze

Aplikacja npodpis do obsługi certyfikatu

Wdrożenie modułu płatności eservice dla systemu PrestaShop

Dodawanie nowego abonenta VOIP na serwerze Platan Libra

PANEL ADMINISTRACYJNY SPRZEDAWCY SZYBKI START

Instrukca instalacji i obsługi aplikacji CHIGO Smart Kit

Instrukcja Integracja z RedCart. Wersja z Copyright Zakupteraz.pl

OSGi Agata Hejmej

Opis Web Service API dla usługi FAX. Wersja 1.0.0

Podejście obiektowe do budowy systemów rozproszonych

Wdrożenie modułu płatności eservice. dla systemu oscommerce 2.3.x

PORTAL KLIENTA I OBSŁUGA ZGŁOSZEŃ.V01. VULCAN Innowacji

Internetowy moduł prezentacji WIZYT KLIENTA PUP do wykorzystania np. na stronie WWW. Wstęp

NetDrive czyli jak w prosty sposób zarządzać zawartością FTP

Transkrypt:

Nexto.API Przykładowy klient Java 1.6 do systemu zamówień NextoAPI Przygotował Rafał Ozga 2004-2015 e-kiosk S.A. Maj 2015, Maj 2015, Wersja: 1.5 strona 1

Historia zmian Lp. Data Zmiany 1 28/05/15 Zmiana danych firmy Maj 2015, Wersja: 1.5 strona 2

1. Wstep Przykładowa implementacja modułu składania zamówień poprzez API.Nexto w Java 1.6 oparta jest na bibliotece Apache CXF1 i ma na celu demonstrację wszystkich niezbędnych kroków potrzebnych do tego, by aplikacja Państwa sklepu mogła bezpiecznie połączyć się do systemu API.Nexto, złożyć zamówienie i odebrać wyniki. Istotnym elementem aplikacji jest nexto-orderservice-client.jar zawierający klasy utworzone automatycznie narzędziami dostarczanymi z biblioteką Apache CXF z pliku WSDLowego opisującego OrderService serwisu API.Nexto2. Pozostałe jary wchodzące w skład aplikacji to standardowe jary dołączane do dystrybucji biblioteki Apache CXF. Oczywiście można również budować moduły do składania zamówień do systemu API.Nexto w Javie 1.6 nie odwołując się bynajmniej do biblioteki Apache CXF, a korzystać w zamian z innych popularnych rozwiązań typu Apache Axis, Apache Axis2, Metro etc. Kod przykładowego klienta powinien to w znacznym stopniu ułatwić. 2. Implementacja W skład paczki z kodem klienta wchodzą trzy pliki: OrderServiceClient.java - główna klasa zawierająca całą logikę aplikacji ClientPasswordCallback.java - klasa niezbędna w procesie autentykacji w ramach WS-Security PartnerAPI.java - klasa pomocnicza, enkapsulująca api_id i hasło partnera API Logika działania klienta jest następująca: 1. Pobierz plik WSDL zawierający informacje o dostępnych funkcjonalnościach: URL wsdlurl = new URL("https://nextoapi.pl/services/OrderService?wsdl"); 2. Stwórz instancję OrderService: QName SERVICE_NAME = new QName("http://api.nexto.com", "OrderService"); OrderService_Service ss = new OrderService_Service(wsdlURL, SERVICE_NAME); OrderService port = ss.getorderserviceport(); Client client = ClientProxy.getClient(port); Endpoint cxfendpoint = client.getendpoint(); 3. Podaj parametry partnera API (api_id oraz password) uzyskane w procesie rejestracji w systemie API.Nexto: PartnerAPI partnerapi = new PartnerAPI(); partnerapi.setapi_id("to-jest-moj-api-id"); Maj 2015, Wersja: 1.5 strona 3

partnerapi.setpassword("top-secret-pass"); 4. Stwórz instancję klasy potrzebnej w procesie autentykacji w ramach WS-Security: ClientPasswordCallback callback = new ClientPasswordCallback(); callback.setpassword(partnerapi.getpassword()); 5. Ustaw wymagane parametry obsługi WS-Security: Map<String, Object> outprops = new HashMap<String, Object>(); outprops.put(wshandlerconstants.action, WSHandlerConstants.USERNAME_TOKEN); outprops.put(wshandlerconstants.user, partnerapi.getapi_id()); outprops.put(wshandlerconstants.password_type, WSConstants.PW_TEXT); outprops.put(wshandlerconstants.pw_callback_ref, callback); WSS4JOutInterceptor wssout = new WSS4JOutInterceptor(outProps); cxfendpoint.getoutinterceptors().add(wssout); 6. Stwórz polecenie utworzenia zamówienia na żądane egzemplarze: CreateOrderRequest req = new CreateOrderRequest(); req.setapiid(partnerapi.getapi_id()); //email tylko jeśli zamówienie ma być dostarczone bezpośrednio do klienta: req.setemail("sample@test.pl"); req.setpass(partnerapi.getpassword()); req.getissueid().add(4361); 7. Złóż zamowienie i odczytaj wyniki, bądź ewentualne komunikaty o błędach: OrderResponse res; try { System.out.println("Tworzę zamówienie..."); res = port.createorder(req); System.out.println("Zamówienie utworzone. Szczegóły:"); System.out.println("status: " + res.getstatus()); System.out.println("status msg: " + res.getstatusmessage()); System.out.println("Całkowity koszt: " + res.getorder().gettotalprice()); } catch (APINextoWSException_Exception e) { System.out.println("Fault code: " + e.getfaultinfo().getfaultcode()); System.out.println("Fault message: " + e.getfaultinfo().getfaultstring()); } catch (SOAPException_Exception e) { // nieprzewidziany wyjątek: e.printstacktrace(); } Maj 2015, Wersja: 1.5 strona 4

8. Powtórnie pobierz zamówienie: ResendOrderRequest resendreq = new ResendOrderRequest(); resendreq.setapiid(partnerapi.getapi_id()); resendreq.setpass(partnerapi.getpassword()); resendreq.setorderid(res.getorder().getid()); System.out.println("Powtórnie pobieram zamówienie..."); res = port.resendorder(resendreq); System.out.println("Zamówienie pobrane powtórnie. Szczegóły:"); System.out.println("status: " + res.getstatus()); System.out.println("status msg: " + res.getstatusmessage()); System.out.println("Całkowity koszt: " + res.getorder().gettotalprice()); for(orderitem item: res.getorder().getitems()) { System.out.println("item links: " + item.getlinks()); } 3. Uruchamianie Skrypty (bat, sh) uruchamiające przykładową aplikację zostały dołączone do dystrybucji, dostępnej do pobrania w sekcji Narzędzia API dostępnej po zalogowaniu się do panelu administracyjnego. Maj 2015, Wersja: 1.5 strona 5