하나의 ASMX 서비스에 대해 두 개의 델파이 클라이언트가 있습니다. 한 클라이언트는 일반 데스크톱 응용 프로그램이고 다른 클라이언트는 Outlook 추가 기능입니다. 내 PC에서 모든 것이 잘 작동합니다 (SOAP 호출은 ASMX 서비스로). 그러나 내 costumers 중 하나가 Outlook 추가 기능 내에서 SOAP 호출에 문제가 있으며 같은 시간에 데스크톱 응용 프로그램이 동일한 컴퓨터에서 예상대로 작동합니다.SOAP 요청의 빈 응답
Outlook 추가 기능에서 SOAP 호출 문제는 "XML 문서에 최상위 요소가 있어야합니다."라는 오류입니다. 이 오류의 원인은 호출 응답이 없습니다. 로그를 살펴 보자 :
8/7/2013-1:12:29 PM Response:
8/7/2013-1:12:29 PM XML document must have a top level element.
Line: 0
XMLDoc.TXMLDocument.LoadData + $2AA
XMLDoc.TXMLDocument.SetActive + $A8
XMLDoc.TXMLDocument.LoadFromStream + $29
Rio.TRIO.Generic + $70F
응답 스트림 통화
fResponse.LoadFromStream(Response);
를 사용 HttpRio AfterExecute 방법으로 검색되는 질문 :이 오류의 이유는, 무엇을 어떻게 할 수있는 동일한 시스템에서 하나의 클라이언트 잘 작동합니까? 이 상황을 재현하고 진단하려면 어떻게해야합니까?
P. http 패킷을 스니핑 한 것은 좋지만 http 스니퍼를 실행하려면 costumer의 PC에 액세스 할 수 없습니다.
두 앱에서 SOAP 요청을 로깅하고 비교/표시 할 수 있습니까? 잘못된 요청은 서버에 따라 빈 응답을 초래할 수 있습니다. 맞춤 서버인가, 아니면 우리 모두가 알고있는 것. Exchange 웹 서비스? (이 경우 질문을 편집하십시오.) –
이것은 사용자 지정 C# 서비스입니다. 로깅 요청은 내 생각입니다. 나는 이것을 고객에게 추가했고 costumer에게 보낼 것이다. costumer의 응답 후에 질문을 더 많은 정보로 업데이트합니다. – GothAr
Outlook 추가 기능이 정확히 동일한 사용자 권한으로 실행됩니까? – mjn