Java (다른 사람이 작성한)로 작성된 웹 서비스를 호출하는 C# 클라이언트를 작성하고 있습니다. 내 클라이언트에 웹 참조를 추가했고 웹 서비스에서 메소드를 호출 할 수있었습니다.개체 배열을 반환하는 Java 웹 서비스를 사용하도록 C# 클라이언트 작성
서비스가 개체 배열을 반환하도록 변경되었으며 클라이언트가 반환 된 SOAP 메시지를 올바르게 구문 분석하지 못합니다.
MyResponse[] MyFunc(string p)
class MyResponse
{
long id;
string reason;
}
내 생성 된 C# 프록시 (SoapHttpClientProtocol.Invoke를 사용하여) 웹 서비스, I, 즉 하나의 요소 1의 길이가 MyResponse [] 배열을 기대하고 있습니다를 호출합니다. Invoke 호출 이후에 얻는 것은 서비스가 실제로 반환하는 것과 관계없이 id = 0 및 reason = null 인 요소입니다. 패킷 스니퍼를 사용하면 id 및 reason이 null이 아닌 값으로 설정된 합법적 인 SOAP 메시지로 보이는 서비스가 반환되고 있음을 알 수 있습니다.
someobject []를 반환하는 Java 웹 서비스를 호출하기 위해 C# 클라이언트를 얻으려면 어떤 트릭이 있습니까? 필요한 경우 살균 데모를 얻으려고 노력할 것입니다.
편집 : 이것은 "웹 참조 추가 ..."를 통한 웹 참조입니다. VS 2005, .NET 3.0.
"웹 참조 추가"(.NET 2.0) 또는 "서비스 참조 추가"(.NET 3.0)를 사용하고 있습니까? –