Willkommen im SAP Forum
ABAP Webservices mit dem SOA-Manager anlegen - Link zum Blogartikel
vor 14 Jahren
Frank Hachenberg
# 1 - vor 14 Jahren

Hallo Herr Harmes,
vielen Dank für die tolle Doku. Hat uns das Leben gerade sehr vereinfacht.
Mit freundlichen Grüßen
Frank Hachenberg
sven moeller
# 2 - vor 14 Jahren

super doku! gibts da auch eine mit der ich auf diese aufbauen kann
zb um nen sinnvollen web service für das ides system zu bauen?
Stefan Schnell
# 3 - vor 14 Jahren

Hallo Herr Harmes,
auch von mir ein Dankeschön für die gute Dokumentation, sie hat mir sehr geholfen.
Beste Grüße
Stefan Schnell
# 4 - vor 14 Jahren
Hallo Herr Möller.
Im SAPnet gibt es auch einiges an Ressourcen zum Thema. Die Anleitung auf dieser Seite kann auch für ein IDES-System verwendet werden.
Viele Grüße,
Tobias Harmes
Sebastian Simon
# 5 - vor 14 Jahren

Hallo Herr Harmes,
erstmal ein großes Dabke für die einfache Einführung. Gibt es dazu vllt noch weiterführenden Dokumentationen.
Bei mir gibt es leider das Problem, dass es beim starten der Übertragung ein Fehler gibt. Der Quelltext wird ordentlich angzeigt aber nach dem Drücken auf den grünen Pfeil bekomme ich diese Fehlermeldung:
ERROR:java.net.ConnectException: Connection refused: connect
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.(Unknown Source)
at java.net.Socket.(Unknown Source)
at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:80)
at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:122)
at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
at com.eviware.soapui.impl.wsdl.support.http.SoapUIMultiThreadedHttpConnectionManager$HttpConnectionAdapter.open(SoapUIMultiThreadedHttpConnectionManager.java:1666)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at com.eviware.soapui.impl.wsdl.submit.transports.http.HttpClientRequestTransport.sendRequest(HttpClientRequestTransport.java:202)
at com.eviware.soapui.impl.wsdl.WsdlSubmit.run(WsdlSubmit.java:123)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ich nehme an, dass er die URL wsdl nicht aufmachen kann. Ich habe alle Benutzerdaten eingegeben.
Vielen Dank
Sebastian Simon
# 6 - vor 13 Jahren
Hallo Herr Simon.
Sie können sich das WSDL-Dokument im Browser ansehen. Dort müsste es einen Eintrag "soap:address location" geben. Die Nummer hinter dem ":" ist der Port, auf dem die Anfrage von soapUI probiert wird. Bitte prüfen Sie einmal lokal auf Ihrem Rechner ob eine Firewall oder ein Virenscanner Verbindungen auf diesem Port unterbindet. Sie können außerdem in der Transaktion SMICM nachprüfen, welche Port-Einstellung Sie auf Ihrem System haben (Springen->Parameter->Anzeigen). Dort sollte unter Services ein Eintrag á la icm/server_port_0 = PROT=HTTP,PORT=n auftauchen, wobei n gleich dem Port sein sollte, den Sie in der WSDL gefunden haben. Und wie immer gilt: das ICM-Log bietet auch hier wertvolle Hinweise.
Viele Grüße,
Tobias Harmes
Gerd Hagebölling
# 7 - vor 13 Jahren

Hallo Hr. Harmes
Danke für die prima Doku.
Gibt es eine solche Doku auch für die Einstellungen auf dem SOAMANAGER-Reiter "Technische Konfiguration"
( Sinn und Zweck, was muß wo eingetragen werden und wo bekomme ich diese Info her ).
Viele Grüße
Gerd Hagebölling
# 8 - vor 13 Jahren
Hallo Herr Hagebölling.
Bisher nicht, ich setze das mal auf die Todo-Liste. Leider funktioniert im SOA Manager auch die Online-Hilfe regelmäßig nicht. Auf help.sap.com gibt es mit Working with the SOA Manager eine gute Übersicht über die einzelnen Funktionen.
VG, Tobias Harmes
Fredy Häner
# 9 - vor 13 Jahren

Hallo Herr Harmes
Danke für die super Anleitung, leider funktioniert bei mir der Link bei der Transaktion SOAMANAGER ->
"WSDL-Dokument für gewähltes Binding öffnen" nicht.
Ich erhalte immer folgende Meldung
Fehler: Keine Daten zum Bindingschlüssel ""
Können Sie mir sagen, wo und wie ich diese Daten zum Bindingschlüssel eingeben kann?
Freundliche Grüsse
Fredy Häner
# 10 - vor 13 Jahren
Hallo Herr Häner.
Haben Sie eventuell die Konfiguration in einem anderen Mandanten gemacht? Dann müssten Sie die Konfiguration im aktuellen Mandanten auch noch mal machen, bevor der WSDL-Download funktioniert. Ich habe hier noch einen Link gefunden: http://forums.sdn.sap.com/message.jspa?messageID=10172785
Viele Grüße,
Tobias Harmes
Fredy Häner
# 11 - vor 13 Jahren

Hallo Herr Harmes,
Danke für die Unterstützung, es lag jedoch nicht am falschen Mandanten. Ich musste den Service manuell erstellen und damit hat es funktioniert.
Viele Grüsse
Fredy Häner
Holger Nitsch
# 12 - vor 13 Jahren

Hallo Herr Harmes,
tolle Doku für den Bereich SAP als Service Provider.
Nun möchte ich aber aus SAP heraus einen fremden Webservice aufrufen, wobei dazu die fremde WSDL benötigt wird.
Wann darf ich dazu mit einer Doku von Ihnen rechnen ?
Gruß
H. Nitsch
Marcel
# 13 - vor 13 Jahren

Hallo Herr Harmes,
ich kann beim Schritt "Öffnen des WSDL Dokumentes" kein Dokument auswählen. Über das Suchergebnis finde ich meinen Funktionsbaustein und die Service Definition.
Zudem habe ich Services 0 / Endprodukt 0.
Welchen Schritt habe ich vergessen?
Vielen Dank für Ihre Hilfe.
Gruß
M. Schick
# 14 - vor 13 Jahren
Hallo Herr Schick.
Sie können auf dem Reiter Konfigurationen einen Service mit dem Button "Service anlegen" anlegen. Dann sollte das WSDL-Dokument in der Übersicht verfügbar sein. Normalerweise passiert das automatisch, aber über die genannte Funktion kann man es manuell nachholen. Für den Namen wähle ich immer Externer Name = Interner Name = Service Name = Endpunktname. Wenn mein Funktionsbaustein ZTH_WS_TESTING heißt, dann heißt mein Service normalerweise auch so.
Viele Grüße,
Tobias Harmes
Ronald Dartsch
# 15 - vor 13 Jahren

Hallo Her Harmes,
diese wunderbare Doku hat mich ein ganzes Stück weitergebracht. Danke dafür!
Nun habe ich noch das Problem, dass ich einen SAP-Service aus einem Infopath-Formular aufrufen möchte, aber gerne einen festen SAP-User hinterlegen würde, damit man sich nicht bei jedem Request neu authentifizieren muss. Ist das möglich?
Viele Grüße
Ronald Dartsch
Selçuk Yaşar
# 16 - vor 12 Jahren

Hallo Herr Harmes,
die Dokumentation hat mir vieles erleichtert. Vielen dank für das Schreiben.
Thomas Weber
# 17 - vor 12 Jahren

Hallo Herr Harmes !
Was hab ich falsch gemacht wenn, im SOAMANAGER beim Apply auf das Webservice folgende Fehlermeldungen erscheinen:
"SRT Framework Ausnahme. Fehler beim Lesen der Variante "ZWEBSERVICE" der Service Definition "ZWEBSERVICE". Sie besitzen keine Berechtigung zur Anzeige.
Am User kanns nicht liegen, der hat SAP_ALL
Wie haben 3 Mandanten, bei der WEB-Service-Administration wird nicht der Standardmandant, sondern ein anderer angeboten (der Eintrag "in System" neben dem "Start" Button).
Winfried Janssen
# 18 - vor 11 Jahren

Danke für die Einführung. Meine Frage wäre noch wie ich Daten aus SAP an den Webservice sende
. Funktionsbaustein
. Programm zum Aufruf des Bausteins
. Destination ?
Grüße
Winfried Janssen
Sebastian
# 19 - vor 7 Jahren

Super Anleitung - es haben sich inzwischen schon einige Dinge geändert aber die Grundlagen sind nach wie vor die gleichen.
Gibt es eine Möglichkeit, hier "Pflichtfelder" zu definieren, d.h. das der Webservice prüft ob ein Feld belegt ist und ggf. eine Exception wirft?
gruß & danke
Steffen
# 20 - vor 5 Jahren

Sehr hilfreich und klasse erklärt. Die Anleitung hat mir sehr geholfen. Vielen Dank!
Beste Grüße
Steffen
Kommentar verfassen