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

SOAP::Lite version problems w/ complex query

Expand Messages
  • Wersel, Eric
    I am attempting to port this code to a new server install, but for some reason it s not working with a current version of SOAP::Lite. When I switch the new
    Message 1 of 1 , Oct 15, 2009
    • 0 Attachment
      SOAP::Lite version problems w/ complex query

      I am attempting to port this code to a new server install, but for some reason it's not working with a current version of SOAP::Lite. When I switch the new server to use SOAP::Lite version 0.60, it works great. Using version 0.71, the query block is nil and the call fails. As far as I can tell, the set-up looks the same as in most of the examples and archived e-mails.

      Can anyone, please, see what Im doing wrong?

      use SOAP::Lite;

      my $soap = SOAP::Lite

              -> service("http://$ENV{'SERVER_ADDR'}/midas.wsdl")

              -> on_fault(

                     sub {

                         my($soap, $res) = @_;

                         die ref $res ? $res->faultstring : $soap->transport->status, "\n";

                     }

                 );

      sub GetCaseList()

      {

        my $query_patientid     = SOAP::Data->name( 'patientID' )

                                            ->value( '1234567' )

                                            ->type( 'string' );

        my $query_caseListOrder = SOAP::Data->name( 'caseListOrder' )

                                            ->value( 'ORDER-PT-ID' )

                                            ->type( 'midas:CaseListQueryOrder' );

        my $query_offset        = SOAP::Data->name( 'offset' )

                                            ->value( 0 );

        my $query_priority      = SOAP::Data->name( 'priority' )

                                            ->value( 0 );

        my $query_sortOrder     = SOAP::Data->name( 'order' )

                                             ->value( 0 );

        my @db_caselist       = ();

        my $SOAPquery         = SOAP::Data->name( 'query' )

                                          ->value( \SOAP::Data->value( $query_patientid,

                                                                        $query_offset,

                                                                        $query_caseListOrder,

                                                                        $query_priority ) );

        @db_caselist = $soap->GetCaseList( $SOAPquery, $query_sortOrder );

       

        return @db_caselist;

      }

    Your message has been successfully submitted and would be delivered to recipients shortly.