Aufgabe1: Probleme mit Seife
This presentation is the property of its rightful owner.
Sponsored Links
1 / 16

Aufgabe1: Probleme mit Seife PowerPoint PPT Presentation


  • 52 Views
  • Uploaded on
  • Presentation posted in: General

Aufgabe1: Probleme mit Seife. Trotz aller Standardisierung gibt es immer noch Interoperabilitätsprobleme zwischen den einzelnen SOAP-Implementierungen (z.B. IBM WebSphere und MS .Net). a) Wodurch entstehen diese Probleme? Wo treten sie auf?

Download Presentation

Aufgabe1: Probleme mit Seife

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Aufgabe1 probleme mit seife

Aufgabe1: Probleme mit Seife

Trotz aller Standardisierung gibt es immer noch Interoperabilitätsprobleme zwischen den einzelnen SOAP-Implementierungen (z.B. IBM WebSphere und MS .Net).

a) Wodurch entstehen diese Probleme? Wo treten sie auf?

b) Welche Möglichkeiten gibt es um Interoperabilitätsprobleme zu vermeiden? (Best Practice)

Zusatz: Welche Probleme der Interoperabilität können durch die WSDL bei der Zusammenarbeit von MS .Net und IBM WebSphere entstehen und wie können diese vermieden werden? Gibt es evtl. Richtlinien oder Konventionen, die bei derErstellung von WSDL-Dateien beachtet werden sollten, die nicht im Standard definiert sind?


Aufgabe1 probleme mit seife

Wodurch entstehen diese Probleme?

- zahlreiche SOAP-Implementierungen (BEA, IBM, Microsoft, Sun Microsystems, Systinet, Apache, ...)

- SOAP-Standard lässt vieles offen und bietet oft Möglichkeiten zur Interpretation; ist nur Recomendation


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf?

  • Transport

    • SOAPAction

  • XML

    • BOM Marks

  • SOAP

    • Datatype conversion


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf::Transport()

  • SOAPAction im HHTP request header muss spezifiziert und quotiert sein.

  • .NET Benutzt den SOAPAction header um die gewünschte Operation auszuführen

  • z.B: urn:Example1/sayHello (/ ist Separator)

  • Apache benutzt den namespace URI des ersten Kindelementes von <SOAP:Body> um die gewünschte Operation auszuführen; SOAPAction wird ignoriert.

  • Lite benuzt # als den Separator im SOAPAction header

  • z.B: urn:Example1#sayHello (# ist Separator)


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf::Transport()

Bestpractice: SOAPAction header sollte immer vorhanden sein, und " delimitiert

- SOAPAction: "http://tempuri.org/"

- SOAPAction:

- SOAPAction null, nicht immer möglichch, da viele HTTP Cliente nicht die möglichkeit haben null als einen Headerwert zu spezifiziern

Beispiel Recommendations von ws-i

- R1109 The value of the SOAPAction HTTP header field in a HTTP request MESSAGE MUST be a quoted string.

- R1119 A RECEIVER MAY respond with a Fault if the value of the SOAPAction HTTP header field is not quoted.


Aufgabe1 probleme mit seife

n++ is BOM Mark

BOM wird benutzt um die Encodierung einer Portion von einem XML Dokument zu spezifizieren;

Apache hat einen Problem damit

Wo treten diese Probleme auf::XML()

HTTP/1.1 200 OKContent-Type: text/xml; charset=utf-8

Content-Length: length

n++<?xml version="1.0" encoding="utf-8"?>

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://soapinterop.org/"

xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">

<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<tns:echoStringResponse>

<Return>string</Return>

</tns:echoStringResponse>

</soap:Body>

</soap:Envelope>


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf::SOAP()

  • Einbindung komplexer, selbstdefinierter Datentypen

  • Float

  • Decimal

  • Datetime

  • Bytearrays


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf::SOAP()

Bsp: http://www.whitemesa.com/interop.htm

Es wurden einige Methoden zum Ein- und Ausgeben diverser Datentypen definiert (z.B. echo2DStringArray)

<complexType name="ArrayOfString2D"/>

<complexContent>

<restriction base="SOAP-ENC:Array">

<sequence>

<element name="item" type="string" minOccurs="0" maxOccurs="unbounded" nillable="true"/>

</sequence>

<attributeGroup ref="SOAP-ENC:commonAttributes"/>

<attribute ref="SOAP-ENC:offset"/>

<attribute ref="SOAP-ENC:arrayType" wsdl:arrayType="xsd:string[,]"/>

</restriction>

</complexContent>

</complexType>


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf::SOAP()

Ergebnisse: Files: www.whitemesa.com\Results\results_mesa.htm und

www.whitemesa.com\Results\results_sun.html


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf::SOAP()::Float()

  • - XML stellt Infinity als INF dar

  • - Apache SOAP 2.2 gibt Infinity zurück

  • Apache AXIS gibt Inf zururück

  • MS SOAP Toolkit 3.0: SoapMapper:Converting data for SoapMapper failed inside the typemapper

  • - Schicken von 1.23456789E38

  • IONA XMLBus 1.23456789E38

  • White Mesa 2.7 1.234568E38

  • MS SOAP ToolKit 3.0 1.23456786051167E+38


Aufgabe1 probleme mit seife

Wo treten diese Probleme auf::SOAP()

Decimal

-> Minimum 18 Digits, nach spezifiktion von XML Schema

-> Aber: keine höchste Grenze spzifiziert!

-> MS & MESA: 28 Digits

-> Axis: >100 Digits

DateTime

->Mesa: Seconds

->Apache SOAP & Axis: Milliseconds

Bytearrays

->Apache scheitert an base64Binary encodierte Bytearrays


Aufgabe1 probleme mit seife

Welche Möglichkeiten gibt es um Interoperabilitätsprobleme zu vermeiden? (Best Practice)

- Best Practice für Endanwender schwierig, da Programmierumgebung das Tool stellt, welches SOAP- und WSDL-Dokumente erstellt (testen, testen, testen!!!)

- Toolkits verwenden, die weitgehendst interoperabel sind (welche sind das? eventuell SQLData SOAP Interop Interface www.soapclient.com\Test\interopTest.html)

Ergebnisse: www.soapclient.com\Results\interopResult.html

- WS-I: Organisation die versucht Web Services weitesgehend interoperabel zu machen -> durch

weitere Spezifikationen

- Aufpassen mit den Datentypen, und wissen welche Datentypen eventuelle Schwachstellen oder Interoperabilität verursachen könnten

http://www.ws-i.org/Profiles/Basic/2003-08/BasicProfile-1.0a.html


Aufgabe1 probleme mit seife

Probleme der Interoperabilität zwischen MS .NET und IBM WebSphere WSDL

Bsp: entspricht Standard läuft aber nicht überall

<definitions name="StockQuote"

targetNamespace="http://example.com/stockquote/wsdl"

xmlns:sq="http://example.com/stockquote/sqTypes/"

...

xmlns="http://schemas.xmlsoap.org/wsdl/">

<import namespace="http://example.com/stockquote/sqTypes/"

location="http://example.com/stockquote/sqTypes.xsd"/>

<message name="GetLastTradePriceInput">

<part name="body" element="sq:TradePriceRequest"/>

</message>

...

</definitions>


Aufgabe1 probleme mit seife

Probleme der Interoperabilität zwischen MS .NET und IBM WebSphere WSDL

WS-I konform

<definitions name="StockQuote"

targetNamespace="http://example.com/stockquote/wsdl"

xmlns:sq="http://example.com/stockquote/sqTypes/"

...

xmlns="http://schemas.xmlsoap.org/wsdl/">

<types>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">

<xsd:import namespace="http://example.com/stockquote/sqTypes/"

schemaLocation="http://example.com/stockquote/sqTypes.xsd"/>

</xsd:schema>

</types>

...


Aufgabe1 probleme mit seife

Probleme der Interoperabilität zwischen MS .NET und IBM WebSphere WSDL

  • .NET generiert einen WSDL Datei per Webservice

  • IBM WS generiert 2: eine für das Interface und eine für die Implementation

  • - An WS-I Basic Profile halten

  • - WSDL Analyzer (testen, testen, testen)

  • File: www.xmethods.net\Tools.htm


Aufgabe1 probleme mit seife

Aktuelle Informationen

- Aktuelle Links und Infos über unser Projekt unter:eitchteeteepee://wsp2003.tripod.com/x/Links, PPTs, Kontakt


  • Login