2014-02-12 3 views
0

저는 python을 처음 사용하고 suds를 사용하여 SOAP 서비스의 데이터를 사용합니다. 서비스에 전화를 걸 때이 오류가 발생합니다. 일부 매개 변수를 보내지 않아도되는 다른 호출은 정상적으로 작동합니다. 그러나이 서비스는 다음과 같은 오류를 던지고있다. 누군가이 오류의 원인을 이해하는데 도움을 줄 수 있습니까? primary는 devline 클래스의 속성이며 부울 값입니다.suds SOAP 호출 매개 변수

criteria = connection.factory.create('criteria') 
devline = connection.factory.create('devline') 

devline.primary = True 
devline.source ="abc" 
devline.name = "xyz" 
devline.hybridType = "xyz" 

criteria.primaryDevline = devline 
criteria.pairedDevlines = [] 
criteria.criteriaNumber = None 

기준은 다음과 같습니다

(criteriaKey){ 
    primaryDevline = 
     (devline){ 
     primary = None 
     sourceBase = None 
     devlineName = None 
     hybridType = 
      (hybridType){ 
       value = None 
      } 
     } 
    pairedDevlines[] = <empty> 
    criteriaNumber = None 
} 

내가 response = connection.service.somemethod(criteria,criteriaState.PUBLISHED)

나는 다음과 같은 오류 얻을 사용하여 서비스를 호출하려고 :

self = <suds.mx.literal.Literal instance at 0x103fd8998> 
content = (Content){ 
    tag = "primary" 
    value = True 
    type = None 
} 

> ??? 
E TypeNotFound: Type not found: 'primary' 

File "/Users/nkimidi/projects/firstws/cca/ezcommit-client/test/unit/service/build/bdist.macosx-10.8-intel/egg/suds/mx/literal.py", line 87 
TypeNotFound 
=========================== 1 failed in 0.27 seconds =========================== 

답변

0

은 : 비눗물에 대한

devline = { 
    'primary':1, 
    'sourceBase':sourceBase, 
    'devlineName' : devlineName, 
    'hybridType' : hybridType 
    } 
cKey['primaryDevline'] = devline 
cKey['pairedDevlines'] = [] 
cKey['criteriaNumber'] = None 

문서는 방법 중 하나 일 것이라고 말했습니다 만, 이전의 나를 위해 작동하지 않았다 :

devline.primary = True 
devline.source ="abc" 
devline.name = "xyz" 
devline.hybridType = "xyz" 
cKey.primaryDevline = devline 
cKey.pairedDevlines = [] 
cKey.criteriaNumber = None 

이 조각이 근무하고있다.

0

이이 일을 시작을 때 위에 사용 된 방법 대신 사전으로 devline을 사용했습니다. 1 일이 낭비되었습니다. 대신이의

+0

직접 답변을 수락하고 적절한 코드를 추가하십시오. –