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

852Re: [soaplite] .NET client and Soap-Lite Server?

Expand Messages
  • Paul Kulchenko
    Sep 20, 2001
    • 0 Attachment
      Hi, Weidong!

      Oops. You're right. Forgot to tell. SOAPAction is checked against
      URI#method combination, so just disable this check on server side
      with

      ->on_action(sub{return})

      I will probably do it by default in future versions, because SOAP1.2
      is heading toward optional SOAPAction, so server will not mandate it.

      As for @INC problem. It's rather feature I'd like to change. To get
      desired result you need to put your class ALSO in dispatch_to:

      ->dispatch_to('My::Class')

      You need to do it only if you are loading other classes (or you can
      follow Dana's advice). I'll update the code, so you won't need to do
      that.

      Best wishes, Paul.

      --- Weidong Wang <wwang@...> wrote:
      > Got past this one. But it still does not work for me.
      >
      > I am using Soap-Lite client to simulate .NET client by sending a
      > request with SoapAction in the format of:
      >
      > SoapAction: http://someurl/Test (Test is the method name)
      >
      > I tried both dispatch_to with static dispatch and dispatch_with for
      > SoapAction matching. But the server is not happy:
      >
      > SOAP::Serializer::envelope: Client SOAPAction shall match
      > 'uri#method' if present (got 'http://someurl/Test', expected
      > 'http://someuri/Test#Test'
      >
      > So it seems to me that the SOAP-Lite server is insisting on seeing
      > "uri#method" format, which .NET is not giving.
      >
      > Did I miss anything here?
      >
      > Thanks for all the help.
      >
      > Weidong
      >
      > ----- Original Message -----
      > From: Dana Powers
      > To: soaplite@yahoogroups.com
      > Sent: Thursday, September 20, 2001 8:20 PM
      > Subject: Re: [soaplite] .NET client and Soap-Lite Server?
      >
      >
      > Either
      >
      > ## Pull in file explicitly
      > require '/path/to/your/modules/module.pm';
      >
      > or
      >
      > ## Add script specific directory to search path
      > use lib '/path/to/your/modules/';
      >
      > then
      >
      > use module;
      >
      > dpk
      > ----- Original Message -----
      > From: Weidong Wang
      > To: soaplite@yahoogroups.com
      > Sent: Thursday, September 20, 2001 5:00 PM
      > Subject: Re: [soaplite] .NET client and Soap-Lite Server?
      >
      >
      > Thanks for the quick reply. Now I have the problem that the
      > server complains that it fails to access my class: can't locate
      > myclass.pm in @INC (@INC contains:).
      >
      > I tried adding
      >
      > BEGIN {
      > unshift @INC, '/users/wwang/soapgw';
      > }
      >
      > to the beginning of my server code. That didi not help. I set
      > env var INC. It did not work either. @INC is always empty. What do
      > I need to do to make it to search my own directory (or to get the
      > default @INC back)?
      >
      > Thanks.
      >
      > Weidong
      >
      > ----- Original Message -----
      > From: Paul Kulchenko
      > To: soaplite@yahoogroups.com
      > Sent: Thursday, September 20, 2001 3:26 PM
      > Subject: Re: [soaplite] .NET client and Soap-Lite Server?
      >
      >
      > Hi, Weidong!
      >
      > Unfortunately I can't tell you how to change SOAPAction in
      > .NET on
      > client side, but I can tell you how it can be done in
      > SOAP::Lite ;).
      >
      > Instead of dispatch_to() method, you may try to use
      > dispatch_with()
      > that allows you to bind any SOAPAction or URI to specific
      > class or
      > object:
      >
      > dispatch_with({
      > 'http://www.soaplite.com/' => 'My::Class',
      > 'http://www.soaplite.com/method' => 'Another::Class',
      > 'http://www.soaplite.com/obj' => My::Class->new,
      > })
      >
      > You can't bind to specific method, but there is no need for
      > that
      > since you can always write:
      >
      > dispatch_with({
      > 'http://www.soaplite.com/#methodA' => 'My::Class',
      > 'http://www.soaplite.com/#methodB' => 'My::Class',
      > })
      >
      > SERVICE DEPLOYMENT section has more information on that and
      > t/03-server.t has tests that use dispatch_to and
      > dispatch_with calls.
      >
      > You can use both dispatch_to and dispatch_with, but
      > dispatch_with is
      > always matched BEFORE dispatch_to.
      >
      > Also I would like to know how to do that in .NET on client
      > side.
      >
      > > BTW, I tried to look at the following link, but could
      > not get
      > > there
      > > http://perldoc.anidea.com/SOAP/Lite.html#INTEROPERABILITY
      > Yes, perldoc.anidea seems to be down. You can always get this
      > info
      > from CPAN:
      >
      >
      >
      http://search.cpan.org/doc/KULCHENKO/SOAP-Lite-0.51/lib/SOAP/Lite.pm#INTEROPERABILITY
      >
      > This link is version dependent, that's why I'm linking to
      > perldoc
      > rather than to CPAN. Let me know how it works for you.
      >
      > Best wishes, Paul.
      >
      > --- Weidong Wang <wwang@...> wrote:
      > > Hi:
      > >
      > > Has anyone had any experience using a .NET client to
      > talk to a
      > > SOAP-Lite server? I know the tricks needed to make
      > SOAP-Lite client
      > > to talk to a .NET server, but how do you make the .NET
      > client to
      > > generate the right SoapAction to trigger the soap-lite
      > server to
      > > load the right package and invoke the right method?
      > >
      > > BTW, I tried to look at the following link, but could
      > not get
      > > there
      > >
      > > http://perldoc.anidea.com/SOAP/Lite.html#INTEROPERABILITY
      > >
      > > Thanks.
      > >
      > > Weidong
      > >
      > >
      >
      >
      > __________________________________________________
      > Terrorist Attacks on U.S. - How can you help?
      > Donate cash, emergency relief information
      > http://dailynews.yahoo.com/fc/US/Emergency_Information/
      >
      > To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@yahoogroups.com
      >
      >
      >
      > Your use of Yahoo! Groups is subject to the Yahoo! Terms of
      > Service.
      >
      >
      > To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@yahoogroups.com
      >
      >
      >
      > Your use of Yahoo! Groups is subject to the Yahoo! Terms of
      > Service.
      >
      >
      > To unsubscribe from this group, send an email to:
      > soaplite-unsubscribe@yahoogroups.com
      >
      >
      >
      > Your use of Yahoo! Groups is subject to the Yahoo! Terms of
      > Service.
      >
      >


      __________________________________________________
      Terrorist Attacks on U.S. - How can you help?
      Donate cash, emergency relief information
      http://dailynews.yahoo.com/fc/US/Emergency_Information/
    • Show all 11 messages in this topic