Laden...

Webservice/WCF-Service aus SAP aufrufen

Erstellt von ironhaert vor 12 Jahren Letzter Beitrag vor 12 Jahren 2.650 Views
I
ironhaert Themenstarter:in
62 Beiträge seit 2010
vor 12 Jahren
Webservice/WCF-Service aus SAP aufrufen

Hallo zusammen,

ich habe die Aufgabe einen Webservice zu erstellen, welcher von verschiedenen Seiten aufrufbar sein soll (SAP, C#, ...).

Da ich auf der Seite von SAP keine Ahnung habe und diese auch nicht von mir erstellt wird, wollte ich mich hier mal erkundigen, welche Möglichkeiten existieren. Vielleicht gibt es hier ja jemand, der sich zwischen SAP und .NET richtig gut auskennt.

Der Webservice möchte ich mittels WCF erstellen. Da ich mir nicht sicher bin, wie genau sich welche Bindings im SAP auswirken, wollte ich hier mal nachfragen, ob jemand evtl. schon bestimmte Tipps kennt oder Dinge, die es zu beachten gilt für die Erstellung des Webservices für SAP, oder ob es da im Allgemeinen gar keine Probleme gibt, da es ein "stink normaler" Webservice und Aufruf ist.

Configuring System-Provided Bindings
Es sollten ja alle mit WS gekennzeichneten Bindings in Frage kommen.
Am besten wäre wohl das folgende: WSHttpBinding

Für Anregungen, Tips, Hilfen, Tutorials oder sonstige Hinweise zu diesem Thema wäre ich dankbar.

Viele Grüße,
ironhaert

6.911 Beiträge seit 2009
vor 12 Jahren

Hallo ironhaert,

am sichersten bist du mit dem BasicHttpBinding dran, denn das wird von allem unterstützt was dem SOAP folgt (zumindest theoretisch 😉).

Mehr weiß ich hierzu auch nicht, SAP sagt mir nur vom Namen her was.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

B
387 Beiträge seit 2005
vor 12 Jahren

Hi ironheart,

zwei Dinge musst du beachten:*Wie gfoidl schon gesagt hat, musst du BasicHttpBinding verwenden *Zusätzlich brauchst du Inline XSD in WSDL with WCF. Grund: Die SAP-Module, die ich kenne, können mit Imports nicht umgehen

Gruß
Roland

I
ironhaert Themenstarter:in
62 Beiträge seit 2010
vor 12 Jahren

Danke euch, für eure Antworten.

Ich denke, dass BasicHttp für den Anfang auch ausreichen müsste. Erst mal klein Anfangen und ich kann später ja evtl. noch steigern, das Ganze.

Das mit dem Inline XSD in WSDL ist ein guter Tipp, auch wernn mir es noch nicht 100%ig klar ist. Werde das nochmals mit der Gegenseite, dem SAP-Entwickler besprechen.

Gruß
ironhaert

B
387 Beiträge seit 2005
vor 12 Jahren

Hi,

das weiß der SAP-Entwickler i. d. R. gar nicht. Er macht im Prinzip nichts anderes wie du. Er bekommt eine wsdl oder eine Url zu einer wsdl und importiert diese in seine Entwicklungsumgebung. Und die hat eben Probleme damit, wenn mit xsd:import gearbeitet wird - was Microsoft standardmäßig macht. Progblem an der ganzen Sache ist, dass die Fehlermeldung in SAP nicht wirklich aussagekräftig ist.

Was ich auch noch dazu sagen will: Meine Aussagen hier betreffen ERP / ABAP-Stack und den Netweaver Java-Stack. Bei anderen Modulen / Komponenten kanns schon wieder anders ein.

Gruß
Roland

187 Beiträge seit 2009
vor 12 Jahren

Als Abap-Entwickler will ich auch noch ne Kleinigkeit beitragen.

Ich hatte bisher keine wirklichen Probleme mit Inline-XSDs. Was aber auch einfach zu eliminieren wäre, denn man muss ja die WSDL nicht direkt vom Service konsumieren sondern kann sich eine SAP konforme WSDL aus der orignalen "zusammenkopieren" und dann die xml-Datei direkt übergeben.

Wo wir Probleme bekommen haben ist mit <extension>-Tags, welche für vererbungen benutzt werden. Dafür ist uns bis jetzt kein wirklicher Workaround gelungen (ausser auf die Typen zu verzichten und Standarttypen zu arbeiten).

Wenn dafür noch jemand was einfällt wären wir natürlich sehr dankbar 😉