Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

narazie zaczynam wiec pytanie takie
jakie sa minimalne wymagania serwerowe
Tomasz Dygas

Tomasz Dygas Konsultant SAP

Temat: web services in abap

Internet Explorer 5.5 or higher or Firefox 1.0 or higher.
At least 1 GB RAM.
Intel Pentium III/1.1 GHz or higher (or compatible).
22 GB hard disk space temporary during installation - 10 GB permanent.
High-resolution monitor (1024x768 or higher, 256 colors).
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

Dziekuje za odpowiedz.
Czy ktos z Was dysponuje moze materialami (tutoriale, podpowiedzi) odnosnie tego, jak mozna uruchomic usluge WebService uzywajac SAPa.
Potrzebuje za pomoca strony HTMLa (korzystajac z serwera webservice postawionego na SAPie) wprowadzic jakas dana (np ident) i zaprezentowac konkretne dane bazujace na wprowadzonej zmiennej na stronie.
Kazda pomoc jest mile widziana :)
Pozdrawiam
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

Poki co przeszukuje internet w celu odnalezienia roznych informacji.
Narazie znalazlam m.in. informacje:
tworzenie webservice, download 04s

Najwyrazniej pracuje (w chwili obecnej) na starszej wersji SAPa bo nie posiadam opisanych wyzej opcji. Jesli ktos dysponowalby informacjami 'krok po kroku' (moja wiedza jest minimalna w tym zakresie) bylabym bardzo wdzieczna.

Jeszcze druga sprawa: czy ktos moze orientuje sie jakie sa minimalne wymagania by wykonac czynnosci, ktore opisalam we wczesniejszym poscie.
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

A zapomnialam dodac ze zalezy mi aby nie korzystac z javy tylko czytsko w abapie

konto usunięte

Temat: web services in abap

A na jakiej wersji pracujesz?
Tomasz Dygas

Tomasz Dygas Konsultant SAP

konto usunięte

Temat: web services in abap

Staram się zrozumieć założenia Twojego problemu.
Z tego co zrozumiałem chcesz stworzyć serwis i konsumenta webService tylko i wyłącznie w SAP ?

Czyli po stronie SAP'a tworzysz moduł funkcjyjny na podstawie którego tworzysz web service (serwer)...i na to pewnie Webdynpor jakos konsument.

W starszych systemach nie nie mas faktycznie takich funkcji jak WS. najprościej to tak jak pisał Tomek, ściągnij sobie Netweavera trialowego, tam to działa. Wymgania ma dość spore zarówno co do hdd jak i ram. Szczegółowe wymagania i instalki znajdziesz tu : https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/...

Ja próbowalem łączyć WS z SAP z .NET, ale póki co mam jakies niezgodności typów..ale w ramach jednego systemu powinno zadziałać.
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

Czy ktos zyczliwy moglby mi podac konkretnie CO, GDZIE i w jakiej transakcji mam kliknac/wpisac abym mogla uruchomic usluge web service wraz z modulem funkcyjnym (lub inaczej jesli to jest mozilwe). Chodzi mi konkretnie o prosta sprawe: chce wejsc na strone internetowa przez przegladarke, podac jakas wartosc i wyprowadzic jakas tabelke z danymi wyszukanymi w oparciu o wprowadzona dana.
Nie jestem pewna czy dobrze to zrobilam, ale utworzylam:
Grupe funkcji,
W niej modul funkcyjny
Nastepnie przypisalam web service do modulu funkcyjnego korzystajac z opcji utilities/more utilities/create web service/from function module
Tam wprowadzilam proste dane: tzn utworzylam definicje oraz przypisalam modul funkcyjny.
Korzystam zdaje sie z wersji 6.40 w zwiazku z czym virtualny interface nie byl potrzebny do utworzenia (jak to mialo miejsce w poprzednich wersjach).

W rezultacie posiadalam prosty modul funkcujny, zmieniajacy jakas zmienna oraz stworzona usluge web service

Dalsze kroki byly juz intuicyjne i nie jestem pewna czy byly konieczne (jesli nie, prosilabym o wskazanie niepotrzebnych krokow - bede je numerowac dla ulatwienia):

1) Korzystajac z transakcji WSADMIN weszlam w:
SOAP Application for RFC-Compliant FMS, znalazlam utworzona przez siebie usluge Web Service ZBA_CWS_02 o adresie dostepu: default_host/sap/bc/srt/rfc/sap/ZBA_CWS_02
2) Po kilku przejsciach zwiazanych z architektura sieci lokalnej (nieistotne dla sprawy) otworzylam plik WSDL korzystajac z opcji CTRL+F1. Wyswietlil mi sie moj plik WSDL.
3) Po kliknieciu na Web Service Homepage (CTRL+F8) dostalam komunikat "Settings for J2EE Server do not exist".
4) Weszlam w opcje Goto -> Administration Settings i wprowadzilam dane http://localhost:8000
5) Otwiera mi sie strona z adresem: http://<host>:<port>/wsnavigator/jsp/index... dane>
6) Otrzymuje komunikat URL http://<host>:<port>/wsnavigator/jsp/index... call was terminated because the corresponding service is not available, a ponizej dostaje blad ErrorCode: ICF-NF-http-c:000-u:SAPSYS-I:L-<domena>_DEV_00-v:0-s:404-r:NotFound
7) znalazlam informacje, ze niektore uslugi mozna aktywowac z transakcji SPRO uslugi np do Web Dyn Pro korzystajac z patha: /sap/SAP Netweaver/Applications erver/Internet Communication Framework i mozna aktywowac tam uslugi, dzieki ktorym Web Dyn Pro zacznie dzialac. W takim razie, pomyslalam ze moja usluge (w tym wypadku wsnavigator lub wsnavigator/jsp) takze mozna stamtad aktywowac - ale nie moge tego w ogole znalezc

EDIT: znalazlam informacje, ze w transakcji SPRO w w/w sciezce trzeba aktywowac uslugi /sap/public/icman oraz /sap/public/ic_info aby SAP mogl przyjmowac zadania od stron.

8) Inna opcja jest taka, ze nie posiadam zainstalowanego komponentu Javy
a) jesli mimo wszystko to nie wina braku Javy (zalozmy tak), to jak moge aktywowac usluge wsnavigator
b) jesli to wina braku javy, to czy po tym, jak uruchomie serwer javy i zostana doinstalowane komponenty, bedzie automatycznie uruchomiona usluga wsnavigator i wlaczenie Home Page uruchomi strone, czy bede musiala zrobic cos z ta usluga wsnavigator
9) jesli na tym skonczy sie konfigurowanie web servisu, jak moge polaczyc warstwe prezentacyjna z warstwa logiczna. Chodzi mi konkretnie o umieszczenie tam jakiegos pola typu input (znaczy wprowadzenia danych), przycisku OK, i przetworzenia tych informacji. Poki co nie doszlam do tego etapu wiec byc moze jest to dosc banalne po poprawnym skonfigurowaniu powyzszych czynnosci.
10) znalazlam jeszcze taka transakcje jak WSCONFIG (Release Web Services for SOAP Runtime) w ktorej moge uruchomic moja usluge wpisujac Service Definition ZBA_CWS_02 oraz Variant to samo. Pojawia sie wtedy wpis z zielonym kwadracikiem, Web Service ZBA_CWS_02 oraz adresem dostepu: default_host/sap/bc/srt/rfc/sap/ZBA_CWS_02. Czy jest to potrzebne czy niepotrzebnie to robie? Po 'dwukliku' na tej nazwie otwiera sie dodatkowa opcja w ktorej po wcisnieciu ICF Details otwiera sie Maintain service ze sciezka do mojego Web Service ZBA_CWS_02. Prawym klawiszem na nazwie, wlaczam 'test service' otwiera mi sie strona htt:/<host>:<port>/sap/bc/srt/rfc/sap/zba_cws_02?sap-client=100 z kodem w XMLu o komunikacie: "SOAP processing failure, error id = 112".
Poki co utknelam wlasnie na tym

Pozdrawiam i licze na pomoc :)

PS. Prosilabym bez pisania skrotami myslowymi czy nawet akronimami. Od niedawna zaczelam zabawe z SAPem i w dosc przyspieszonym tempie metodami prob i bledow probuje cokolwiek zrobic.Magdalena Graczyk edytował(a) ten post dnia 11.09.07 o godzinie 14:55

konto usunięte

Temat: web services in abap

Witam,
Po pierwsze spróbuj przetestować wygenerowany plik WSDL za pomocą jakiegoś klienta webservice'ów (np. XML Spy albo Eclipse WTP).

http://www.altova.com/simpledownload2.html?gclid=CMvA3...
http://www.eclipse.org/webtools/

Z tego co pamiętam to strona testowa nie będzie działała bo wymaga stosu java'owego (punkt 6).

Pozdrawiam,
WojtekWojciech Paweł G. edytował(a) ten post dnia 11.09.07 o godzinie 16:29
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

Witam.
Dziekuje za odpowiedz.
Bede ponownie numerowac pytania, by latwiej bylo sie do nich odnosic.
Sciagnelam program XML Spy, wrzucilam do niego plik WSDL, wygenerowalam request dotyczacy tego pliku, wyslalam zadanie i dostalam response, z wynikiem swiadczacym o tym, ze modul funkcyjny do ktorego przypisany byl Web Service zadzialal (prosta zmiana wartosci w oparciu o dane wejsciowe).
1) czy to znaczy ze moj web service dziala poprawnie?(wnioskuje ze tak ale przydaloby sie potwierdzenie od bardzioej doswiadczonych)

Odnosnie tego co napisal Wojciech:
"Z tego co pamiętam to strona testowa nie będzie działała bo wymaga stosu java'owego (punkt 6).".
Jak widzialam na screenach to ma to za zadanie dzialac dokladnie tak, jak to przetestowalam w programie XML Spy. Pytanie 'z ciekawosci':
2) w jaki sposob moge to mimo wszystko uruchomic? Jesli zainstalowany jest juz serwer J2EE, w jaki sposob moge go polaczyc z SAPem (nie mam kompletnie koncepcji czy to ma dzialac na zasadzie: lacze serwer J2EE z SAPem, a uzytkownik laczy sie z w/w serwerem J2EE?) tak, abym dostala wlasnie Home Page web servicu z ktorego moge testowac wysylanie i odbieranie zadan.
3) czy w ogole bede potrzebowac serwera J2EE?

I teraz w sumie najbardziej interesujaca mnie czesc (zakladajac ze wszystko dziala :P)
W jaki sposob moge stworzyc strone, ktora bedzie zawierala wlasnie jakies pole tekstowe, jakis przycisk, ktory po wcisnieciu przycisku OK wysle request za pomoca (jesli dobrze zrozumialam) SOAP do mojego web service i odbierze stamtad dane, a nastepnie przysle response, ktore bede mogla wyswietlic (chodzi o dane tabelkowe jak pisalam wczesniej).

4) jesli gdzies po drodze sa jakies bledy w koncepcji prosilabym o wyjasnienie
5) w miare mozliwosci prosilabym o jak najprostsze wyjasnienie problemu (tzn 'step by step'). Jakich komponentow uzywac, jak to polaczyc z istniejacym web servicem (ktory od razu posiada WSDL) etc.
Zaczynam przygode z SAPem i na dobra sprawe dopiero sie z tym zaznajamiam na przykladzie wczesniej opisanego problemu :)

Pozdrawiam i z niecierpliwoscia wypatruje podpowiedzi :)

konto usunięte

Temat: web services in abap

Witam,
1)tak web service działa poprawnie

Strona testowa jest klientem tego web service'u czyli tym samym co xml spy.

2) teraz ten web service możesz wykorzystać w dowolnej aplikacji nie tylko sap'owej

może być to .NET, serwer J2EE innego dostawcy (np. JBoss) albo jakaś aplikacja (np. standalone java) która bazując na opisie web service'u (WSDL) wywołuje go.

Opcji jest wiele ale właśnie po to został wymyślony protokół SOAP aby używano standardu.

3) nie potrzebujesz J2EE

Jeżeli chcesz używać przeglądarki to radzę zastosować web dynpro for ABAP.

Sądzę, że ten blog może być interesujący:

https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/3982

5)
tak się najłatwiej używa webservice'ów:
a) otwórz transakcje SE80
b) wybierz Create->Enterprise Service / Web Service
c) wybierz proxyobject
d) w WSDL source jeżeli masz plik na lokalnym systemie to wybierz Local File
e) wybierz pakiet i prefiks
f) zostanie wygenerowana klasa a odpowiednia metoda EXECUTE_ASYNCHRONOUS albo EXECUTE_SYNCHRONOUS
g) teraz żeby użyc tego musisz albo stworzyć jakiś raport który wywoła metodę obiektu

poniżej przykład dla synchronicznego wywołania

data: s_proxy type ZCL_OUTPUT. "type wyjścia
DATA gr_proxy TYPE REF TO ZCL_CO_twoje_proxy_OUT_ASYNC.
DATA fault TYPE REF TO cx_ai_system_fault . "fault object reference

"tu wypelnij dane
TRY.
CALL METHOD gr_proxy->execute_asynchronous
EXPORTING
output = s_proxy.
COMMIT WORK.
CATCH cx_ai_system_fault INTO fault.
WRITE :/ fault->errortext.
ENDTRY.

Na 100% na sap developer network (sdn.sap.com) jest dokument opisujący szczegółowo jak to wywołać. Proponuję Ci zamieścić to samo również tam.

Pozdrawiam,
WojtekWojciech Paweł G. edytował(a) ten post dnia 12.09.07 o godzinie 14:10
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

Dziekuję wszystkim za pomoc

Moj webserwis dziala ale...
hmm w sumie nie koniec jeszcze moich pytan....

Chcialabym sie dowiedziec jak moge uruchomic w WSADMIN opcje Web Service Homepage, w celu wyeliminowania programow zewnetrznych typu XMLSpy.
Jak moge dostac sie do tego calego wsnavigatora, czy jest to element SAPa czy moze uruchomiony na komputrze serwer javy (jesli tak, to poprosilabym linka do tego, poniewaz sciagniete przeze mnie rzeczy nie do konca dzialaja - a konkretnie nie dzialaja).

Inna rzecz, juz calkowicie poboczna, jest taka, czy znacie moze inne programy ktore moga sluzyc do sledzenia wysylanych zadan i odpowiedzi, tak jak to robi XMLSpy. Najlepiej darmowy, prosty program.

Wytrwalych (niezniecheconych moimi pytaniami) dziekuje za wszelkie odpowiedzi.
Bardzo zalezy mi na uruchomieniu tego wsnavigatora. Dlatego prosze o jeszcze raz o pomoc. :)Magdalena Graczyk edytował(a) ten post dnia 17.09.07 o godzinie 10:24

konto usunięte

Temat: web services in abap

Magdo web service nawigator działa na stosie J2EE nie uruchomisz tego na próbnej wersji serwera ABAP. Jedyne co możesz zrobić, to zainstalować próbną wersję j2ee ale wtedy nie będziesz miała dostępu do stosu abap'owego.

Narzędziem które możesz używać zarówno niekomercyjnie jak i komercyjnie jest eclipse WTP, wcześniej podałem linka.

pozdrawiam,
wojtek
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

rzecz w tym ze ja nie mam probnej wersji serwera apab
powiedzmy ze pewna firma pozwolia mi pogrzebac na swoich serwerach :)
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

generalnie chcialabym wiedziec czy to ja musze cos uruchomic-jakas usluge(chociaz sadze ze uruchomilam wszystko potrzebne)
czy poprosic o cos panow z basisMagdalena Graczyk edytował(a) ten post dnia 18.09.07 o godzinie 08:52

konto usunięte

Temat: web services in abap

Jeżeli masz również serwer J2EE to spróbuj może tak jak jest napisane i podaj adres serwera w transakcji WSADMIN (Goto->Administration Settings) i wpisz nazwę serwera albo poproś któregoś z adminów.

pozdrawiam,
wojtek
Magdalena Smętek

Magdalena Smętek Projektant, Asseco
Poland S.A.

Temat: web services in abap

ok dziekuje bardzo bardzo za pomoc :)
wlasnie czekam na udostepnienie odpowieniego portu wiec juz wszystko powinno byc ok

konto usunięte

Temat: web services in abap

Wojciech Paweł G.:
Witam,
1)tak web service działa poprawnie

Strona testowa jest klientem tego web service'u czyli tym samym co xml spy.

2) teraz ten web service możesz wykorzystać w dowolnej aplikacji nie tylko sap'owej

może być to .NET, serwer J2EE innego dostawcy (np. JBoss) albo jakaś aplikacja (np. standalone java) która bazując na opisie web service'u (WSDL) wywołuje go.

Opcji jest wiele ale właśnie po to został wymyślony protokół SOAP aby używano standardu.

3) nie potrzebujesz J2EE

Jeżeli chcesz używać przeglądarki to radzę zastosować web dynpro for ABAP.

Sądzę, że ten blog może być interesujący:

https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/3982

5)
tak się najłatwiej używa webservice'ów:
a) otwórz transakcje SE80
b) wybierz Create->Enterprise Service / Web Service
c) wybierz proxyobject
d) w WSDL source jeżeli masz plik na lokalnym systemie to wybierz Local File
e) wybierz pakiet i prefiks
f) zostanie wygenerowana klasa a odpowiednia metoda EXECUTE_ASYNCHRONOUS albo EXECUTE_SYNCHRONOUS
g) teraz żeby użyc tego musisz albo stworzyć jakiś raport który wywoła metodę obiektu

poniżej przykład dla synchronicznego wywołania

data: s_proxy type ZCL_OUTPUT. "type wyjścia
DATA gr_proxy TYPE REF TO ZCL_CO_twoje_proxy_OUT_ASYNC.
DATA fault TYPE REF TO cx_ai_system_fault . "fault object reference

"tu wypelnij dane
TRY.
CALL METHOD gr_proxy->execute_asynchronous
EXPORTING
output = s_proxy.
COMMIT WORK.
CATCH cx_ai_system_fault INTO fault.
WRITE :/ fault->errortext.
ENDTRY.

Na 100% na sap developer network (sdn.sap.com) jest dokument opisujący szczegółowo jak to wywołać. Proponuję Ci zamieścić to samo również tam.

Pozdrawiam,
Wojtek


...wracając do tematu. Mi przy generowaniu proxy cały czas próbuje modyfikować standard SAP i wymaga klucza developerskiego. Z tego co widze Wojtek Ty masz to w Zecie... gdzie się to ustawia ?

**********

update...jasne, nazwa proxy w zecie i jest ok ;)Marcin Łapa edytował(a) ten post dnia 23.03.09 o godzinie 17:27



Wyślij zaproszenie do