Erkenntnisse DBH Response
Nach dem Server Umzug Aug/Sep. funktionierte der DBH Rückkanal nicht mehr. Mit NSW 3.0 gab es ohnehin schwere Probleme, so dass man den Weg verlassen hat. In einem Termin in Bremen wurde nun die Reaktivierung besprochen. Ich habe es leider auf Anhieb nicht geschafft, den Rückkanal wiederzubeleben, da alle Werte leer waren und offensichtlich das Parsing kaputt war. Dabei habe ich festgestellt, dass DBH im Header die SOAP Header Attribute To: und Action: (von SOAP 1.1) verwendet in der Form:
<s:Header xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<To s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">http://srv-04.bsmd.local/nswservice/dbh/ResponseService.svc</To>
<Action s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">http://tempuri.org/IResponseService/NSWResponse</Action>
</s:Header>
<soapenv:Body>
Es hat nur funktioniert, als ich diese beiden Attribute gelöscht habe. Nach langer Suche (kann ja nur serverseitig was ändern, wie dbh angeblich auf die "lowlevel" Themen keinen Einfluss hat) folgendes in der web.config eingetragen:
<!-- das default binding für alles Endpunkte -->
<protocolMapping>
<add binding="customBinding" scheme="http" />
<!--add binding="basicHttpBinding" scheme="http" /-->
</protocolMapping>
<bindings>
<!-- das ist das default binding -->
<customBinding>
<binding>
<!--textMessageEncoding messageVersion="Soap11WSAddressing10" /-->
<textMessageEncoding messageVersion="Soap11"/>
<httpTransport maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" />
</binding>
</customBinding>
Der interessante Punkt ist dass man die messageVersion (entscheidet darüber, ob To/Action angenommen wird oder nicht, das ist das Addressing) nur angeben kann wenn man customBinding verwendet.
Außerdem habe ich im Service die Klasse ResponseService mit folgenden Attributen dekoriert:
[ServiceBehavior(AddressFilterMode = AddressFilterMode.Any, ValidateMustUnderstand = false)]
Beim nächsten Versuch kamen die Attribute auf einmal nicht mehr mit (konnte man da doch was drehen, Herr Stöver?) und ich habe das Adressing wieder auskommentiert.
Dieser ganze Bullshit ist nur eine Gedankenstütze