Frage

Ich habe zusammen mit dem Client-Code, um einen Web-Service-Code auf meinem eigenen Rechner läuft. Es lief gut und es geschafft, die Dime-Anhänge von dem Web-Dienst an den Client gesendet zu empfangen.

Der Web-Dienst verwendet WSE 2.0 und Dime-Anhänge. Der Client-Code befindet sich auf der gleichen Maschine, die den Web-Service aufruft.

Doch wenn ich diese R2 Server, auf dem ResponseSoapContext.Current.add (dimeAttachment) auf einem Windows 2003 Linie bereitstellen es aufgrund der ResponseSoapContext.Current Objekt ist null fehlgeschlagen.

Der Client-Code hat es geschafft, den Webdienst zu nennen, wie ich in den Protokollen sehen es versucht, etwas zu tun.

Gäbe es eine Firewall den Client-Code Stoppen die Dime Anlage von dem Web-Service zu erhalten? Oder gibt es eine Einstellung, die ich fehle? Hier ist der Code:

            DimeAttachment dimeAttach = new DimeAttachment(
            "application/octet-stream", TypeFormat.MediaType,
            streamObj);

            if (ResponseSoapContext.Current != null)
            {
                ResponseSoapContext.Current.Attachments.Add(dimeAttach);
            }
            else
            {
                throw new Exception("The ResponseSoapContext.Current object is null");
            }
War es hilfreich?

Lösung

Es stellt sich heraus, der Server hatte Microsoft WSE 2.0 SP2 installiert, wo wie der Client wurde mit Microsoft WSE 2.0 SP3.

Installierte Microsoft WSE 2.0 SP3 auf dem Server und die Verweise aktualisiert und es funktioniert jetzt.

Andere Tipps

hatte ich dieses Problem und löste ich es von meinem Server web.config-Datei, indem Sie einige Konfigurationen über WSE hinzufügen. Meine web.config (gestrippt Einstellungen nicht auf WSE bezogen):

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="microsoft.web.services2" type="Microsoft.Web.Services2.Configuration.WebServicesConfiguration, Microsoft.Web.Services2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
  </configSections>

  <system.web>
    <webServices>
      <soapExtensionTypes>
        <add type="Microsoft.Web.Services2.WebServicesExtension, Microsoft.Web.Services2, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" priority="1" group="0" />
      </soapExtensionTypes>
    </webServices>
  </system.web>
  <microsoft.web.services2>
    <messaging>
      <maxRequestLength>1024000</maxRequestLength>
    </messaging>
    <diagnostics />
  </microsoft.web.services2>
</configuration>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top