guy I am working on an api where I have to send request to a server xml based using soap request but the server is showing me following error: The remote server returned an error: (500) Internal Server Error , Help would be strongly appreciated
My code is like this :
Dim s = ""
s = s & "<?xml version=""1.0"" encoding=""UTF-8""?>" & vbCrLf
s = s & "<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"">" & vbCrLf
s = s & "<soapenv:Body>" & vbCrLf
s = s & "<OTA_AirLowFareSearchRQ EchoToken=""0"" SequenceNmbr=""0"" TransactionIdentifier=""0"" AvailableFlightsOnly="""" DirectFlightsOnly="""" xmlns=""http://www.opentravel.org/OTA/2003/05"">" & vbCrLf
s = s & "<POS xmlns=""http://www.opentravel.org/OTA/2003/05"">" & vbCrLf
s = s & "<Source AgentSine="""" PseudoCityCode="""" TerminalID=""1"">" & vbCrLf
s = s & "<RequestorID ID=""AFFILIATE""/>" & vbCrLf
s = s & "</Source>" & vbCrLf
s = s & "<YatraRequests>" & vbCrLf
s = s & "<YatraRequest DoNotHitCache=""false"" DoNotCache=""false"" YatraRequestTypeCode=""SMPA"" Description="""" MidOfficeAgentID=""28737"" AffiliateID=""TRAVELPARTNER"" />" & vbCrLf
s = s & "</YatraRequests>" & vbCrLf
s = s & "</POS>" & vbCrLf
s = s & "<TravelerInfoSummary>" & vbCrLf
s = s & "<AirTravelerAvail>" & vbCrLf
s = s & "<PassengerTypeQuantity Code=""ADT"" Quantity=""" & drAdult.SelectedValue & """/>" & vbCrLf
s = s & "<PassengerTypeQuantity Code=""CHD"" Quantity=""" & drpChil.SelectedValue & """/>" & vbCrLf
s = s & "<PassengerTypeQuantity Code=""INF"" Quantity=""" & drpInfant.SelectedValue & """/>" & vbCrLf
s = s & "</AirTravelerAvail>" & vbCrLf
s = s & "</TravelerInfoSummary>" & vbCrLf
s = s & "<SpecificFlightInfo>" & vbCrLf
s = s & "<Airline Code=""""/>" & vbCrLf
s = s & "</SpecificFlightInfo>" & vbCrLf
s = s & "<OriginDestinationInformation>" & vbCrLf
s = s & "<DepartureDateTime>" & txtDeparture.Text & "</DepartureDateTime>" & vbCrLf
s = s & "<OriginLocation CodeContext=""IATA"" LocationCode=""" & drpFrom.SelectedValue & """>" & drpFrom.SelectedValue & "</OriginLocation>" & vbCrLf
s = s & "<DestinationLocation CodeContext=""IATA"" LocationCode=""" & drpTo.SelectedValue & """>" & drpTo.SelectedValue & "</DestinationLocation>" & vbCrLf
s = s & "</OriginDestinationInformation>" & vbCrLf
s = s & "<TravelPreferences>" & vbCrLf
s = s & "<VendorPref Code=""SG""/>" & vbCrLf
s = s & "<VendorPref Code=""DN""/>" & vbCrLf
s = s & "<CabinPref Cabin=""" & drpClass.SelectedValue & """/>" & vbCrLf
s = s & "</TravelPreferences>" & vbCrLf
s = s & "</OTA_AirLowFareSearchRQ>" & vbCrLf
s = s & "</soapenv:Body>" & vbCrLf
s = s & "</soapenv:Envelope>" & vbCrLf
Dim url = "http://203.189.91.127:9090/services/spm/spm"
Dim doc As New XmlDocument()
doc.LoadXml(s)
Dim req As HttpWebRequest = WebRequest.Create(url)
req.Headers.Add("SOAPAction", "")
req.ContentType = "text/xml;charset=""utf-8"""
req.Accept = "text/xml"
req.Method = "POST"
Dim stm As Stream = req.GetRequestStream()
doc.Save(stm)
stm.Close()
Dim resp As WebResponse = req.GetResponse()
stm = resp.GetResponseStream()
Dim r As StreamReader = New StreamReader(stm)
'process SOAP return doc here. For now, we'll just send the XML out to the browser ...
Response.Write(r.ReadToEnd())
Getting an window’s application logs will be helpful.
Go to Start – > run -> event viewer (click enter) -> windows logs -> Applications -> Check the logs.
Refer http://support.microsoft.com/kb/308427 for more information. Or
http://www.dotnetnoob.com/2012/03/iis-500-errors-leave-clues-in-log.html