0

Hello all,

This code works fine on my Win XP machine, but not on Win2k. I have tried overriding the webrequest function in Reference.vb with

Protected Overrides Function GetWebRequest(ByVal uri As Uri) As System.Net.WebRequest
            Dim webRequest As System.Net.HttpWebRequest

            webRequest = CType(MyBase.GetWebRequest(uri), System.Net.HttpWebRequest)
            'Setting KeepAlive to false
            webRequest.KeepAlive = False
            GetWebRequest = webRequest
        End Function

but that has had no effect. This is the function that works/doesn't work depending on OS.

Private Function GetRequest(ByVal dataToSend As String)

        Dim myXMLResult As XmlElement
        log.Source = "AIMService Repeater"

        Try
            Dim myService As AIMWebService.AIMWebService = New AIMWebService.AIMWebService

            Dim myCert As X509Certificate = X509Certificate.CreateFromCertFile("C:\AIMCert.der")
            myService.ClientCertificates.Add(myCert)
            myService.Timeout = 30000

            Dim xmlDoc As XmlDocument = New XmlDocument
            xmlDoc.LoadXml(dataToSend)

            log.WriteEntry("Received: " & dataToSend, EventLogEntryType.Information)

            Dim myXMLSend As XmlElement = xmlDoc.DocumentElement
            myXMLResult = myService.serviceProcessor(myXMLSend)

            log.WriteEntry("Response: " & myXMLResult.OuterXml.ToString(), EventLogEntryType.Information)

        Catch ex As SoapException

            Dim exception As String = "SoapException: " & ex.ToString()
            log.WriteEntry(exception, EventLogEntryType.Error)
            Return exception

        Catch ex As SoapHeaderException

            Dim exception As String = "SoapHeaderException: " & ex.ToString()
            log.WriteEntry(exception, EventLogEntryType.Error)
            Return exception

        Catch ex As WebException

            Dim exception As String = "WebException: " & ex.ToString()
            log.WriteEntry(exception, EventLogEntryType.Error)
            Return exception

        Catch ex As System.Exception

            Dim exception As String = "Exception: " & ex.ToString()
            log.WriteEntry(exception, EventLogEntryType.Error)
            Return exception

        Finally
        End Try

        If Not myXMLResult Is Nothing Then
            Return myXMLResult.OuterXml.ToString()
        End If

    End Function

And here is the error


System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send.
at System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at AIMServiceRepeater.AIMWebService.AIMWebService.serviceProcessor(XmlElement serviceProcessorElement) in C:\VSS\Not in Sourcesafe\AIMServiceRepeater\AIMServiceRepeater\Web References\AIMWebService\Reference.vb:line 42
at AIMServiceRepeater.AIMServiceRepeater.GetRequest(String dataToSend) in C:\VSS\Not in Sourcesafe\AIMServiceRepeater\AIMServiceRepeater\Service.vb:line 135

It might be a configuration/security issue with Win2k, it might be something I need to program around. I've spent the morning googling this but no one seems to have the issue depending on OS environment.

Many thanks in advance.

Russ

Edited by Russ_T: n/a

1
Contributor
1
Reply
2
Views
6 Years
Discussion Span
Last Post by Russ_T
0

Seems to be a problem with the certificate, it was not installed on my host machine. Even adding the cert to my request it was still required to be installed.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.