2014-04-24 3 views
1

기본적으로 Savon을 사용하여 플레이어를 인증하는 메소드를 호출하려고합니다. 그리고 다음 오류가 발생했습니다 :Savon SOAP : 요청시 "프로 시저가 제공하지 않은 매개 변수가 필요합니다"라는 메시지가 나타납니다.

프로 시저 또는 함수 'CORE_INCOMING_ValidateSource'에는 제공되지 않은 '@SourceId'매개 변수가 필요합니다.

예 메서드 매개 변수에 있습니다. Ive는 소문자 설정을 조작하기 위해 기호 대신 해시로 사용하려고 시도했지만 나에게도 동일한 오류가 발생합니다.

def set_client 
    @@service ||= Savon.client(wsdl: "http://services.colchian.eu/BOSS_DEMO/BOSSWebServices/IncomingIntegrationService/IncomingIntegrationService.svc?wsdl") 
    end 

def player_login(sourceId, sourcePassword, playerId, password, userId, workstationId, applicationId, logonSource, websiteId, partnerId, thridPartyToken) 
    @response = @@service.call(:player_login) do 
    message sourceId: sourceId, 
      sourcePassword: sourcePassword, 
      playerId: playerId, 
      password: password, 
      userId: userId, 
      workstationId: workstationId, 
      applicationId: applicationId, 
      logonSource: logonSource, 
      websiteId: websiteId, 
      partnerId: partnerId, 
      thridPartyToken: thridPartyToken 
end 
end 

Ive는 서버가 수락하는 모든 방법을 나열하기 위해 Savon .operations 메서드를 사용했습니다. 메서드의 모든 매개 변수 이름을 나열하는 비슷한 방법이 있습니까?

답변

0

표준 방법은 SoapUI을 사용하여 서비스를 검사하는 것입니다. 두 번째 단계에서는 SoapUI를 사용하여 유효한 SOAP 호출을 작성합니다. 세 번째 단계는 루비 (Ruby)와 사 번 (Savon)과 동일한 (작동하는) 동일한 호출을 작성하는 것입니다.

+0

SoapUI에서 유효한 SOAP 호출을 만들고 Ruby에서 동일한 매개 변수를 사용했지만 아직 SoapUI에서 사용 된 메서드를 검사 할 수있는 곳을 보지 못했습니다. 어떤 아이디어? – user3455909

+0

이 하나에 붙어있는 메신저 도와주세요 – user3455909

+0

누구세요? 질문 만하고, 평판은 매우 낮으며, 프로필은 비어 있으며 일반 사용자 이름을 사용합니다. 왜 내가 너를 돕기 위해 내 시간을 보내야 하느냐? 두뇌를 사용하고, 읽고, 생각하고, 배우고 다시 돌아오고, 도움을 받아야합니다. –