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

SOAP::Lite server side input processing

Expand Messages
  • Thom Eden
    Folks, I am trying to write a bit of code on the server side to evaluate the incoming parameters from my client. My incoming XML looks like this:
    Message 1 of 3 , Sep 12 7:29 AM
    • 0 Attachment
      Folks,

      I am trying to write a bit of code on the server side to evaluate the incoming parameters from my client. My incoming XML looks like this:

      <soap header...>
      <INPUT_VARIABLES>
      <Input_var varName="AAA">1</Input_var>
      <Input_var varName="BBB">Test</Input_var>
      <Input_var varName="CCC">267</Input_var>
      <Input_var varName="DDD">Johnson</Input_var>
      </INPUT_VARIABLES>

      On the server side, I can grab the array using something like

      myMethod {
      my($self, $in) = @_;
      my @input = @{$in};
      foreach my $input (@input) {
      print $input, "\n";
      }
      }

      Unfortunately, I can't seem to get the attribute (varName = ?) out f this. Do I need to coerce the array element into a hash? If this were a SOM object, I could evaluate the attribute using $som->attr{'varName'}...

      Any help is greatly appreciated!

      Thom Eden
    • Duncan Cameron
      ... You can get the SOM object by inheriting from SOAP::Server::Parameters class. See ACCESSING HEADERS AND ENVELOPE ON SERVER SIDE in the docs for an
      Message 2 of 3 , Sep 12 8:57 AM
      • 0 Attachment
        --- Thom Eden <the@...> wrote:
        > Folks,
        >
        > I am trying to write a bit of code on the server side to evaluate the
        > incoming parameters from my client. My incoming XML looks like this:
        >
        > <soap header...>
        > <INPUT_VARIABLES>
        > <Input_var varName="AAA">1</Input_var>
        > <Input_var varName="BBB">Test</Input_var>
        > <Input_var varName="CCC">267</Input_var>
        > <Input_var varName="DDD">Johnson</Input_var>
        > </INPUT_VARIABLES>
        >
        > On the server side, I can grab the array using something like
        >
        > myMethod {
        > my($self, $in) = @_;
        > my @input = @{$in};
        > foreach my $input (@input) {
        > print $input, "\n";
        > }
        > }
        >
        > Unfortunately, I can't seem to get the attribute (varName = ?) out f
        > this. Do I need to coerce the array element into a hash? If this were
        > a SOM object, I could evaluate the attribute using
        > $som->attr{'varName'}...

        You can get the SOM object by inheriting from SOAP::Server::Parameters
        class. See "ACCESSING HEADERS AND ENVELOPE ON SERVER SIDE" in the docs
        for an example.

        Duncan


        ________________________________________________________________________
        Want to chat instantly with your online friends? Get the FREE Yahoo!
        Messenger http://mail.messenger.yahoo.co.uk
      • Thom Eden
        Duncan, Thanks, I found that in the docs about 15 minutes after I posted. I got it working like a champ now... Thom ... From: Duncan Cameron
        Message 3 of 3 , Sep 12 9:42 AM
        • 0 Attachment
          Duncan,

          Thanks, I found that in the docs about 15 minutes after I posted. I got it working like a champ now...

          Thom

          ---------- Original Message ----------------------------------
          From: Duncan Cameron <duncan_cameron2002@...>
          Date: Fri, 12 Sep 2003 16:57:44 +0100 (BST)

          > --- Thom Eden <the@...> wrote:
          >> Folks,
          >>
          >> I am trying to write a bit of code on the server side to evaluate the
          >> incoming parameters from my client. My incoming XML looks like this:
          >>
          >> <soap header...>
          >> <INPUT_VARIABLES>
          >> <Input_var varName="AAA">1</Input_var>
          >> <Input_var varName="BBB">Test</Input_var>
          >> <Input_var varName="CCC">267</Input_var>
          >> <Input_var varName="DDD">Johnson</Input_var>
          >> </INPUT_VARIABLES>
          >>
          >> On the server side, I can grab the array using something like
          >>
          >> myMethod {
          >> my($self, $in) = @_;
          >> my @input = @{$in};
          >> foreach my $input (@input) {
          >> print $input, "\n";
          >> }
          >> }
          >>
          >> Unfortunately, I can't seem to get the attribute (varName = ?) out f
          >> this. Do I need to coerce the array element into a hash? If this were
          >> a SOM object, I could evaluate the attribute using
          >> $som->attr{'varName'}...
          >
          >You can get the SOM object by inheriting from SOAP::Server::Parameters
          >class. See "ACCESSING HEADERS AND ENVELOPE ON SERVER SIDE" in the docs
          >for an example.
          >
          >Duncan
          >
          >
          >________________________________________________________________________
          >Want to chat instantly with your online friends? Get the FREE Yahoo!
          >Messenger http://mail.messenger.yahoo.co.uk
          >
          >
          >To unsubscribe from this group, send an email to:
          >soaplite-unsubscribe@yahoogroups.com
          >
          >
          >
          >Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
          >
          >
          >
        Your message has been successfully submitted and would be delivered to recipients shortly.