2013-04-16 3 views
0

는이 같은 웹 서비스가 RPC 인수로 :는 필수 UUID 사용할 수 없습니다 (또는 다른 패턴 관련 필수가 될 타입)

class ExampleService(ServiceBase): 
    __tns__ = 'http://xml.company.com/ns/example/' 

    @rpc(Mandatory.Uuid, _returns=Unicode) 
    def say_my_uuid(ctx, uuid): 
     return 'Your UUID: %s' % uuid 

    @classmethod 
    def dispatch(cls): 
     application = Application([cls], 
      tns=cls.__tns__, 
      interface=Wsdl11(), 
      in_protocol=Soap11(validator='lxml'), 
      out_protocol=Soap11(cleanup_namespaces=True) 
     ) 
     return csrf_exempt(DjangoApplication(application)) 

내가 인수로 Uuid을 사용할 수 있지만, 나는 그것의 의무를 시도하고있을 때 오류가있는 버전 다음 서버 응답 :

XMLSchemaParseError at/
simple type 'MandatoryUuid', attribute 'base': The QName value '{http://www.w3.org/2001/XMLSchema}MandatoryString' does not resolve to a(n) simple type definition., line 12 
Exception Location: D:\Program Files\Python27\lib\site-packages\spyne\interface\xml_schema\_base.py in build_validation_schema, line 183 

Uuid 유형을 사용자 정의 할 수 있습니까? 패턴에서 정의를 제거하면 모든 것이 정상이지만 어쨌든 UUID에 대한 패턴이 있어야합니다. 해결 방법이 있습니까? 어쩌면 다른 비누 틀?

+1

안녕하세요, 다음 레포를 생성했습니다. https://github.com/plq/spyne-uuid-error이 문제가 발생하는 이유를 알려주세요. –

+0

코드를 사용하면이 같은 오류가 발생합니다. https://www.dropbox.com/s/lwkbwwexqox20iu/uuid.html – kbec

+1

2.9.5 후보자를 시도하십시오 : https://github.com/arskom/spyne/tree/2_9. 이 방법으로 문제가 해결되면 새로운 릴리스를 매우 빠르게 만들 것입니다. –

답변

2

방금 ​​Spyne-2.9.5를 출시했습니다.이 Spyne-2.9.5에는이 문제점에 대한 수정이 포함되어 있습니다.