Loading ...
Sorry, an error occurred while loading the content.

get_tModelDetail

Expand Messages
  • aclarkdc@yahoo.com
    I call get_tModelDetail($key) and get an error back stating Element urn:uddi-org:api:get_tModelDetail has incomplete content. Expected
    Message 1 of 2 , Jun 19, 2001
    • 0 Attachment
      I call get_tModelDetail($key) and get an error back stating
      "Element 'urn:uddi-org:api:get_tModelDetail' has incomplete content.
      Expected 'urn:uddi-org:api:tModelKey'."

      I did provide a key, but for some reason it isn't making its way into
      my request. Any thoughts?

      --Annie
    • Paul Kulchenko
      Hi, Annie! ... Probably because $key should be proper object you got from repository (or create on your side) rather than string. See following script that
      Message 2 of 2 , Jun 20, 2001
      • 0 Attachment
        Hi, Annie!

        --- aclarkdc@... wrote:
        > I call get_tModelDetail($key) and get an error back stating
        > "Element 'urn:uddi-org:api:get_tModelDetail' has incomplete
        > content.
        > Expected 'urn:uddi-org:api:tModelKey'."
        >
        > I did provide a key, but for some reason it isn't making its way
        > into my request. Any thoughts?
        Probably because $key should be proper object you got from repository
        (or create on your side) rather than string. See following script
        that does full UDDI search based on name of service. Last line (SOAP
        call) won't work in your version, but it will work in coming one.
        This script will be included as an example.

        You can also generate proper tModelKey (as well as any other
        elements) from string with:

        $tModelKey = tModelKey('UUID:0E727DB0-3E14-11D5-98BF-002035229C64')

        If you got it as the result of call:

        my $tModelKey = $bindingTemplate
        -> tModelInstanceDetails
        -> tModelInstanceInfo
        -> tModelKey
        ;

        it's already in the proper form and you don't need to do anything.

        # -- UDDI::Lite -- soaplite.com -- Copyright (C) 2001 Paul Kulchenko
        --

        use UDDI::Lite
        import => ['UDDI::Data'],
        import => ['UDDI::Lite'],
        proxy => 'http://www-3.ibm.com/services/uddi/inquiryapi'
        ;

        $\="\n"; $,=", "; # specify separators for print()

        my($serviceInfo) = grep { $_->name =~ /stock quote/i }
        find_business(name('XMethods'))
        -> businessInfos
        -> businessInfo
        -> serviceInfos
        -> serviceInfo
        ;

        print $serviceInfo->name, $serviceInfo->serviceKey;

        my $bindingTemplate = get_serviceDetail($serviceInfo->serviceKey)
        -> businessService
        -> bindingTemplates
        -> bindingTemplate
        ;

        my $accessPoint = $bindingTemplate->accessPoint->value;
        my $tModelKey = $bindingTemplate
        -> tModelInstanceDetails
        -> tModelInstanceInfo
        -> tModelKey
        ;

        print $accessPoint, $tModelKey;

        my $wsdl = get_tModelDetail($tModelKey)
        -> tModel
        -> overviewDoc
        -> overviewURL
        -> value
        ;

        print $wsdl;

        print
        SOAP::Lite->service($wsdl)->proxy($accessPoint)->getQuote('MSFT');

        Best wishes, Paul.

        __________________________________________________
        Do You Yahoo!?
        Get personalized email addresses from Yahoo! Mail
        http://personal.mail.yahoo.com/
      Your message has been successfully submitted and would be delivered to recipients shortly.