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

.net client

Expand Messages
  • Mark Cance
    I¹m trying to allow a .net client to connect to our SOAP::Lite web service. When I connect with a SOAP::Lite client using a WSDL file all works fine, however
    Message 1 of 5 , Jul 11, 2003
    • 0 Attachment
      .net client I’m trying to allow a .net client to connect to our SOAP::Lite web service.

      When I connect with a SOAP::Lite client using a WSDL file all works fine, however when the .net user tries to connect they get an exception, (which I’ve pasted below), I get a 500 in my access_log but nothing in my error_log, leading me to believe that something is wrong with the dispatch to the module providing the service.

      I think I’ve tracked the problem down to my <binding> declaration, /Apache/Kentucky/Kentucky_Services is the mod_perl namespace of the module and I use Apache::SOAP to redirect requests to module itself, (relevant code below).

      One thing we have found is that the service location has to match the soapAction (which obviously has to be the location of the module), or .net refuses to do anything!?!!

      Has anyone any tips on what we might be doing wrong, as I'm out of ideas. Any help would be very gratefully received!

      Best,
      Mark.


      #.net exception
      Exception Type: System.Web.Services.Protocols.SoapHeaderException
      Actor:
      Code: http://schemas.xmlsoap.org/soap/envelope/:Client
      Detail: NULL
      Message: SOAPAction shall match 'uri#method' if present (got 'http://213.166.80.105/Apache/Kentucky/Kentucky_Services#RequestAccounts', expected 'http://www.w3.org/2001/XMLSchema#int'


      #SOAP Handlers in Apache-httpd.conf
      <Location /Apache/Kentucky/Kentucky_Services>
          SetHandler perl-script
          PerlHandler Apache::SOAP
          PerlSetVar dispatch_to "Apache::Kentucky::Kentucky_Services"    
      </Location>

      #WSDL binding and service declarations
      <binding name="SOAP" type="tns:freeloaderServicesPort">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
      <operation name="RequestAccounts">
      <soap:operation soapAction="http://221.166.80.117/Apache/Kentucky/Kentucky_Services#RequestAccounts"/>
      <input>
      <soap:body namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services" use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
      </input>
      <output>
      <soap:body namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services" use="encoded" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>                
      </output>
      </operation>
      </binding>
      <service name="Kentucky_Services">
      <documentation>Schmea v0.1 - Generated 19/06/2003.</documentation>
      <port name="freeloaderServicesPort" binding="tns:SOAP">
      <soap:address location="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"/>
      </port>
      </service>

    • Byrne Reese
      There was a post about something similar just a week or two ago. Essentially, the SOAPAction, service package/module name, etc all have to be synchronized.
      Message 2 of 5 , Jul 11, 2003
      • 0 Attachment
        There was a post about something similar just a week or two ago.
        Essentially, the SOAPAction, service package/module name, etc all have
        to be synchronized.

        Take a look at:
        http://groups.yahoo.com/group/soaplite/message/2762

        If that doesn't help, let me know, and I can take a crack at it. :)

        On Fri, 2003-07-11 at 05:23, Mark Cance wrote:
        > I’m trying to allow a .net client to connect to our SOAP::Lite web
        > service.
        >
        > When I connect with a SOAP::Lite client using a WSDL file all works
        > fine, however when the .net user tries to connect they get an
        > exception, (which I’ve pasted below), I get a 500 in my access_log but
        > nothing in my error_log, leading me to believe that something is wrong
        > with the dispatch to the module providing the service.
        >
        > I think I’ve tracked the problem down to my <binding> declaration,
        > /Apache/Kentucky/Kentucky_Services is the mod_perl namespace of the
        > module and I use Apache::SOAP to redirect requests to module itself,
        > (relevant code below).
        >
        > One thing we have found is that the service location has to match the
        > soapAction (which obviously has to be the location of the module), or
        > .net refuses to do anything!?!!
        >
        > Has anyone any tips on what we might be doing wrong, as I'm out of
        > ideas. Any help would be very gratefully received!
        >
        > Best,
        > Mark.
        >
        >
        > #.net exception
        > Exception Type: System.Web.Services.Protocols.SoapHeaderException
        > Actor:
        > Code: http://schemas.xmlsoap.org/soap/envelope/:Client
        > Detail: NULL
        > Message: SOAPAction shall match 'uri#method' if present (got
        > 'http://213.166.80.105/Apache/Kentucky/Kentucky_Services#RequestAccounts', expected 'http://www.w3.org/2001/XMLSchema#int'
        >
        > #SOAP Handlers in Apache-httpd.conf
        > <Location /Apache/Kentucky/Kentucky_Services>
        > SetHandler perl-script
        > PerlHandler Apache::SOAP
        > PerlSetVar dispatch_to "Apache::Kentucky::Kentucky_Services"
        > </Location>
        >
        > #WSDL binding and service declarations
        > <binding name="SOAP" type="tns:freeloaderServicesPort">
        > <soap:binding style="document"
        > transport="http://schemas.xmlsoap.org/soap/http"/>
        > <operation name="RequestAccounts">
        > <soap:operation
        > soapAction="http://221.166.80.117/Apache/Kentucky/Kentucky_Services#RequestAccounts"/>
        > <input>
        > <soap:body
        > namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
        > use="encoded"
        > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        > </input>
        > <output>
        > <soap:body
        > namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
        > use="encoded"
        > encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        > </output>
        > </operation>
        > </binding>
        > <service name="Kentucky_Services">
        > <documentation>Schmea v0.1 - Generated 19/06/2003.</documentation>
        > <port name="freeloaderServicesPort" binding="tns:SOAP">
        > <soap:address
        > location="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"/>
        > </port>
        > </service>
        >
        >
        > Yahoo! Groups Sponsor
        > ADVERTISEMENT
        > click here
        >
        > 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.
        --
        Byrne Reese
        Developer Program Manager
        Grand Central Communications
      • Kedar Barve
        ... SOAP::Lite by default needs a SOAP action in the format uri#method, but that s not the same with other SOAP servers. To disable this behaviour use the
        Message 3 of 5 , Jul 13, 2003
        • 0 Attachment
          Hey Mark:

          > Message: SOAPAction shall match 'uri#method' if present (got
          > 'http://213.166.80.105/Apache/Kentucky/Kentucky_Services#RequestAcco
          >unts',
          > expected 'http://www.w3.org/2001/XMLSchema#int'

          SOAP::Lite by default needs a SOAP action in the format uri#method,
          but that's not the same with other SOAP servers.

          To disable this behaviour use the 'on_action' statement below, which
          will disable this mandatory check. I am not sure how u will
          incorporate this in a mod_perl based server, but I am sure that the
          on_action stmt. will fix this error. Paul had mentioned earlier that
          this check will be disabled in the next release of Soap/Lite.

          >> -> on_action(sub {return}) <<

          FYI, I have a working production environment of a .NET client
          (vb.net, c#) and a SOAP/Lite server (WSDL service). If you need any
          help let me know. Also you can search for posts on this mailing list.

          good luck!

          cheers!
          kedar


          >>
          SOAP::Transport::HTTP::CGI
          -> on_action(sub {return})
          -> dispatch_to('module lib path','<module name>')
          -> handle;
          >>




          --- In soaplite@yahoogroups.com, Mark Cance <mark@f...> wrote:
          > I¹m trying to allow a .net client to connect to our SOAP::Lite
          web
          service.
          >
          > When I connect with a SOAP::Lite client using a WSDL file all works
          fine,
          > however when the .net user tries to connect they get an exception,
          (which
          > I¹ve pasted below), I get a 500 in my access_log but nothing in
          my
          > error_log, leading me to believe that something is wrong with the
          dispatch
          > to the module providing the service.
          >
          > I think I¹ve tracked the problem down to my <binding>
          declaration,
          > /Apache/Kentucky/Kentucky_Services is the mod_perl namespace of the
          module
          > and I use Apache::SOAP to redirect requests to module itself,
          (relevant code
          > below).
          >
          > One thing we have found is that the service location has to match
          the
          > soapAction (which obviously has to be the location of the module),
          or .net
          > refuses to do anything!?!!
          >
          > Has anyone any tips on what we might be doing wrong, as I'm out of
          ideas.
          > Any help would be very gratefully received!
          >
          > Best,
          > Mark.
          >
          >
          > #.net exception
          > Exception Type: System.Web.Services.Protocols.SoapHeaderException
          > Actor:
          > Code: http://schemas.xmlsoap.org/soap/envelope/:Client
          > Detail: NULL
          > Message: SOAPAction shall match 'uri#method' if present (got
          > 'http://213.166.80.105/Apache/Kentucky/Kentucky_Services#RequestAcco
          unts',
          > expected 'http://www.w3.org/2001/XMLSchema#int'
          >
          > #SOAP Handlers in Apache-httpd.conf
          > <Location /Apache/Kentucky/Kentucky_Services>
          > SetHandler perl-script
          > PerlHandler Apache::SOAP
          > PerlSetVar dispatch_to "Apache::Kentucky::Kentucky_Services"
          > </Location>
          >
          > #WSDL binding and service declarations
          > <binding name="SOAP" type="tns:freeloaderServicesPort">
          > <soap:binding style="document"
          > transport="http://schemas.xmlsoap.org/soap/http"/>
          > <operation name="RequestAccounts">
          > <soap:operation
          >
          soapAction="http://221.166.80.117/Apache/Kentucky/Kentucky_Services#Re
          questA
          > ccounts"/>
          > <input>
          > <soap:body
          > namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
          > use="encoded"
          encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
          > </input>
          > <output>
          > <soap:body
          > namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
          > use="encoded"
          encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
          > </output>
          > </operation>
          > </binding>
          > <service name="Kentucky_Services">
          > <documentation>Schmea v0.1 - Generated 19/06/2003.</documentation>
          > <port name="freeloaderServicesPort" binding="tns:SOAP">
          > <soap:address
          > location="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"/>
          > </port>
          > </service>
        • Mark Cance
          Thanks for the tip, problem is I m Apache::SOAP to dispatch the call to my service to the mod_perl provider. Mark.
          Message 4 of 5 , Jul 14, 2003
          • 0 Attachment
            Thanks for the tip, problem is I'm Apache::SOAP to dispatch the call to my
            service to the mod_perl provider.

            Mark.

            On 11/7/03 19:29, "Byrne Reese" <breese@...> wrote:

            > There was a post about something similar just a week or two ago.
            > Essentially, the SOAPAction, service package/module name, etc all have
            > to be synchronized.
            >
            > Take a look at:
            > http://groups.yahoo.com/group/soaplite/message/2762
            >
            > If that doesn't help, let me know, and I can take a crack at it. :)
            >
            > On Fri, 2003-07-11 at 05:23, Mark Cance wrote:
            >> Iÿm trying to allow a .net client to connect to our SOAP::Lite web
            >> service.
            >>
            >> When I connect with a SOAP::Lite client using a WSDL file all works
            >> fine, however when the .net user tries to connect they get an
            >> exception, (which Iÿve pasted below), I get a 500 in my access_log but
            >> nothing in my error_log, leading me to believe that something is wrong
            >> with the dispatch to the module providing the service.
            >>
            >> I think Iÿve tracked the problem down to my <binding> declaration,
            >> /Apache/Kentucky/Kentucky_Services is the mod_perl namespace of the
            >> module and I use Apache::SOAP to redirect requests to module itself,
            >> (relevant code below).
            >>
            >> One thing we have found is that the service location has to match the
            >> soapAction (which obviously has to be the location of the module), or
            >> .net refuses to do anything!?!!
            >>
            >> Has anyone any tips on what we might be doing wrong, as I'm out of
            >> ideas. Any help would be very gratefully received!
            >>
            >> Best,
            >> Mark.
            >>
            >>
            >> #.net exception
            >> Exception Type: System.Web.Services.Protocols.SoapHeaderException
            >> Actor:
            >> Code: http://schemas.xmlsoap.org/soap/envelope/:Client
            >> Detail: NULL
            >> Message: SOAPAction shall match 'uri#method' if present (got
            >> 'http://213.166.80.105/Apache/Kentucky/Kentucky_Services#RequestAccounts',
            >> expected 'http://www.w3.org/2001/XMLSchema#int'
            >>
            >> #SOAP Handlers in Apache-httpd.conf
            >> <Location /Apache/Kentucky/Kentucky_Services>
            >> SetHandler perl-script
            >> PerlHandler Apache::SOAP
            >> PerlSetVar dispatch_to "Apache::Kentucky::Kentucky_Services"
            >> </Location>
            >>
            >> #WSDL binding and service declarations
            >> <binding name="SOAP" type="tns:freeloaderServicesPort">
            >> <soap:binding style="document"
            >> transport="http://schemas.xmlsoap.org/soap/http"/>
            >> <operation name="RequestAccounts">
            >> <soap:operation
            >> soapAction="http://221.166.80.117/Apache/Kentucky/Kentucky_Services#RequestAc
            >> counts"/>
            >> <input>
            >> <soap:body
            >> namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
            >> use="encoded"
            >> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            >> </input>
            >> <output>
            >> <soap:body
            >> namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
            >> use="encoded"
            >> encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
            >> </output>
            >> </operation>
            >> </binding>
            >> <service name="Kentucky_Services">
            >> <documentation>Schmea v0.1 - Generated 19/06/2003.</documentation>
            >> <port name="freeloaderServicesPort" binding="tns:SOAP">
            >> <soap:address
            >> location="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"/>
            >> </port>
            >> </service>
            >>
            >>
            >> Yahoo! Groups Sponsor
            >> ADVERTISEMENT
            >> click here
            >>
            >> 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.
          • Mark Cance
            Thanks!! I think you¹ve found the problem, it would make sense as I was originally using the uri#method in my wsdl, but this caused .net to misbehave. Now I
            Message 5 of 5 , Jul 14, 2003
            • 0 Attachment
              Re: [soaplite] Re: .net client Thanks!! I think you’ve found the problem, it would make sense as I was originally using the uri#method in my wsdl, but this caused .net to misbehave. Now I stopped using it the .net client can connect but SOAP::Lite / Apache::SOAP refuses to dispatch the call to the mod_perl provider, (my module).

              I’ll spend some time trying to figure out how to use on_action()

              Thanks again,
              Mark.

              On 13/7/03 15:10, "Kedar Barve" <kedsbarve@...> wrote:


              Hey Mark:

              > Message: SOAPAction shall match 'uri#method' if present (got
              > 'http://213.166.80.105/Apache/Kentucky/Kentucky_Services#RequestAcco
              >unts',
              > expected 'http://www.w3.org/2001/XMLSchema#int'

              SOAP::Lite by default needs a SOAP action in the format uri#method,
              but that's not the same with other SOAP servers.

              To disable this behaviour use the 'on_action' statement below, which
              will disable this mandatory check. I am not sure how u will
              incorporate this in a mod_perl based server, but I am sure that the
              on_action stmt. will fix this error. Paul had mentioned earlier that
              this check will be disabled in the next release of Soap/Lite.

              >> -> on_action(sub {return}) <<

              FYI, I have a working production environment of a .NET client
              (vb.net, c#) and a SOAP/Lite server (WSDL service). If you need any
              help let me know. Also you can search for posts on this mailing list.

              good luck!

              cheers!
              kedar


              >>
              SOAP::Transport::HTTP::CGI
              -> on_action(sub {return})
              -> dispatch_to('module lib path','<module name>')
              -> handle;
              >>




              --- In soaplite@yahoogroups.com, Mark Cance <mark@f...> wrote:
              > I’m trying to allow a .net client to connect to our SOAP::Lite
              web
              service.
              >
              > When I connect with a SOAP::Lite client using a WSDL file all works
              fine,
              > however when the .net user tries to connect they get an exception,
              (which
              > I’ve pasted below), I get a 500 in my access_log but nothing in
              my
              > error_log, leading me to believe that something is wrong with the
              dispatch
              > to the module providing the service.
              >
              > I think I’ve tracked the problem down to my <binding>
              declaration,
              > /Apache/Kentucky/Kentucky_Services is the mod_perl namespace of the
              module
              > and I use Apache::SOAP to redirect requests to module itself,
              (relevant code
              > below).
              >
              > One thing we have found is that the service location has to match
              the
              > soapAction (which obviously has to be the location of the module),
              or .net
              > refuses to do anything!?!!
              >
              > Has anyone any tips on what we might be doing wrong, as I'm out of
              ideas.
              > Any help would be very gratefully received!
              >
              > Best,
              > Mark.
              >
              >
              > #.net exception
              > Exception Type: System.Web.Services.Protocols.SoapHeaderException
              > Actor:
              > Code: http://schemas.xmlsoap.org/soap/envelope/:Client
              > Detail: NULL
              > Message: SOAPAction shall match 'uri#method' if present (got
              > 'http://213.166.80.105/Apache/Kentucky/Kentucky_Services#RequestAcco
              unts',
              > expected 'http://www.w3.org/2001/XMLSchema#int'
              >
              > #SOAP Handlers in Apache-httpd.conf
              > <Location /Apache/Kentucky/Kentucky_Services>
              >     SetHandler perl-script
              >     PerlHandler Apache::SOAP
              >     PerlSetVar dispatch_to "Apache::Kentucky::Kentucky_Services"
              > </Location>
              >
              > #WSDL binding and service declarations
              > <binding name="SOAP" type="tns:freeloaderServicesPort">
              > <soap:binding style="document"
              > transport="http://schemas.xmlsoap.org/soap/http"/>
              > <operation name="RequestAccounts">
              > <soap:operation
              >
              soapAction="http://221.166.80.117/Apache/Kentucky/Kentucky_Services#Re
              questA
              > ccounts"/>
              > <input>
              > <soap:body
              > namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
              > use="encoded"
              encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
              > </input>
              > <output>
              > <soap:body
              > namespace="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"
              > use="encoded"
              encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
              > </output>
              > </operation>
              > </binding>
              > <service name="Kentucky_Services">
              > <documentation>Schmea v0.1 - Generated 19/06/2003.</documentation>
              > <port name="freeloaderServicesPort" binding="tns:SOAP">
              > <soap:address
              > location="http://221.166.80.117/Apache/Kentucky/Kentucky_Services"/>
              > </port>
              > </service>


              Yahoo! Groups Sponsor
               
               
              ADVERTISEMENT
              <http://rd.yahoo.com/M=194081.3551198.4824677.1261774/D=egroupweb/S=1705701014:HM/A=1663535/R=0/SIG=11ps6rfef/*http://www.ediets.com/start.cfm?code=30504&media=atkins>  

              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 <http://docs.yahoo.com/info/terms/> .

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