2012-03-23 3 views
0

저는 현재 VB에서 작업하고 있습니다. 메인 프레임에서 실행중인 다른 웹 서비스를 호출하는 넷 웹 서비스. WSDL 파일이 제공되었고 wsdl.exe를 사용하여 프록시 클래스를 생성했습니다. 프록시 클래스를 사용하여 메인 프레임 웹 서비스의 메서드를 호출 할 때 생성 된 프록시 클래스의 코드 줄에서 "SOAP에서 변환하지 못했습니다"라는 예외가 발생했습니다.VB .NET 웹 서비스에서 메인 프레임 웹 서비스를 사용하는 동안 "SOAP에서 변환 실패"오류를 어떻게 해결할 수 있습니까?

Dim results() As Object = Me.Invoke("WSIBACTPOperation", New Object() {WSIBACTPOperation1}) 

어떤 원인일까요? 나는 어떤 증명서도 사용할 필요가 없다고 들었다. 이 문제를 어떻게 해결할 수 있습니까?

+0

"서비스 참조 추가"또는 svcutil.exe를 사용하지 않는 이유는 무엇입니까? –

+0

서비스 참조 추가는 동일한 프록시 클래스를 올바르게 생성합니까? 저는 보통 폴더에 소스를 구성하고 다른 클래스와 마찬가지로 프록시 클래스 소스를 관리하는 것이 더 편하다고 생각합니다. 그래, 나도 알아, 이해가되지 않는다. 그러나 우리의 현재 설정에서 우리는 프록시 클래스가 다소 비양심적 인 개발자에 의해 오버라이드되는 것을 막을 수 있습니다. – iamthearvin

+0

아니요, 동일한 클래스를 생성하지 않습니다. 유사한 클래스를 생성하지만 레거시 ASMX 인프라 대신 WCF 인프라를 사용합니다. –

답변

2

나 자신을 알아 냈습니다. 웹 서비스는 완전하고 정확한 입력 만 요구했습니다. 고객 측 개발자는 입력 중 일부가 필요하지 않으므로 비워 둘 수 있다고 우리에게 말하면서 실수를 범했습니다. WSDL 파일을 다시 확인하면 문제가 해결됩니다.

+0

잊어 버렸습니다. 끝난. – iamthearvin

0

먼저, 메인 프레임에서 돌아 오는 SOAP 메시지를 살펴보십시오. SOAP 메시지처럼 보입니까, 아니면 권한이 없다는 것을 나타내는 HTML 또는 일반 텍스트처럼 보입니까?

인증서를 사용할 필요가 없다고 말하면 BASICAUTH를 사용해야한다고 들었습니까?

관련 문제