[MOBY-dev] Try to create service from serialized WSDL, get strange SOAP::Lite error

Frank Gibbons francis_gibbons at hms.harvard.edu
Fri Feb 3 17:41:58 UTC 2006


   Hi,
   It takes MOBY about half a second to retrieve WSDL from Central, to build a
   service. In an effort to improve performance in an application that may need
   to build many (maybe ten) services at a time, I'm trying to cache WSDL
   locally, and build services from that, as needed. I'm using Storable for
   serialization  in  Perl,  which has worked well for me in the past. To
   paraphrase Yogi Berra: "Half a second here, half a second there, pretty soon
   you're talking about real time."
   I'm encountering a strange error in this, which appears to be emanating
   ultimately from SOAP::Lite (see below) In essence it says:
   Service description 'data:,<insert_wsdl_here> can't be loaded: 501 Protocol
   scheme '' is not supported
   The WSDL is URI_encoded by MOBY, not by me - I just supply an XML-text
   description to MOBY::Client::Service->new(), pretty much exactly as provided
   from MCentral. I DO NOT see this problem when using the WSDL supplied by
   MOBY Central directly however, so there's clearly some kind of problem with
   serialization. I'm wondering if any of you have seen a similar behaviour in
   the past, and how you got around it. The WSDL I retrieve from the cache
   looks fine when I print it out, but I'm wondering if there might be some
   other funkiness to it that gets messed up with I store it.
   Thanks in advance.
   -Frank
   ==============================   MOBY::Client::Service  message  below
   =========================
   Service description
   'data:,%3C%3Fxml%20version%3D%221.0%22%3F%3E%0A%3Cwsdl%3Adefinitions%20name%
   3D%22MOBY_Central_Generated_WSDL%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%2
   0%20%20%20targetNamespace%3D%22http%3A%2F%2Fbiomoby.org%2FCentral.wsdl%22%0A
   %20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xmlns%3Atns%3D%22http%3A%2F%
   2Fbiomoby.org%2FCentral.wsdl%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20
   %20%20xmlns%3Axsd1%3D%22http%3A%2F%2Fbiomoby.org%2FCentralXSDs.xsd%22%20%0A%
   20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xmlns%3Asoap%3D%22http%3A%2F%
   2Fschemas.xmlsoap.org%2Fwsdl%2Fsoap%2F%22%0A%20%20%20%20%20%20%20%20%20%20%2
   0%20%20%20%20%20xmlns%3Axsd%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2FXMLSchema%
   22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20xmlns%3D%22http%3A%2F%2
   Fschemas.xmlsoap.org%2Fwsdl%2F%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%
   20%20%20xmlns%3Awsdl%3D%22http%3A%2F%2Fschemas.xmlsoap.org%2Fwsdl%2F%22%3E%0
   A%0A%20%20%0A%20%20%3Cwsdl%3Amessage%20name%3D%22ASimpleServiceInput%22%3E%0
   A%20%20%20%20%20%20%20%20%20%20%3Cwsdl%3Apart%20name%3D%22data%22%20type%3D%
   22xsd%3Astring%22%2F%3E%0A%20%20%3C%2Fwsdl%3Amessage%3E%0A%20%20%20%20%20%20
   %20%20%0A%20%20%3Cwsdl%3Amessage%20name%3D%22ASimpleServiceOutput%22%3E%0A%2
   0%20%20%20%20%20%20%20%20%20%3Cwsdl%3Apart%20name%3D%22body%22%20type%3D%22x
   sd%3Astring%22%2F%3E%0A%20%20%3C%2Fwsdl%3Amessage%3E%0A%20%20%20%20%20%20%20
   %20%20%20%0A%20%20%3Cwsdl%3AportType%20name%3D%22ASimpleServicePortType%22%3
   E%0A%20%20%20%20%20%20%20%20%20%20%3Cwsdl%3Aoperation%20name%3D%22ASimpleSer
   vice%22%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Cwsdl%3Ain
   put%20message%3D%22tns%3AASimpleServiceInput%22%2F%3E%0A%20%20%20%20%20%20%2
   0%20%20%20%20%20%20%20%20%20%20%3Cwsdl%3Aoutput%20message%3D%22tns%3AASimple
   ServiceOutput%22%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Fwsdl%3Aoperatio
   n%3E%0A%20%20%3C%2Fwsdl%3AportType%3E%0A%20%0A%20%20%3Cwsdl%3Abinding%20name
   %3D%22ASimpleServiceBinding%22%20type%3D%22tns%3AASimpleServicePortType%22%3
   E%0A%20%20%20%20%20%20%20%20%20%20%3Csoap%3Abinding%20style%3D%22rpc%22%20tr
   ansport%3D%22http%3A%2F%2Fschemas.xmlsoap.org%2Fsoap%2Fhttp%22%2F%3E%0A%20%2
   0%20%20%20%20%20%20%20%20%3Cwsdl%3Aoperation%20name%3D%22ASimpleService%22%3
   E%3C!--%20in%20essense%2C%20this%20is%20the%20name%20of%20the%20subroutine%2
   0that%20is%20called%20--%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%
   20%20%3Csoap%3Aoperation%20soapAction%3D'http%3A%2F%2Fbiomoby.org%2F%23ASimp
   leService'%20style%3D'rpc'%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%2
   0%20%20%20%3Cwsdl%3Ainput%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
   %20%20%20%20%20%20%20%20%20%20%3Csoap%3Abody%20use%3D%22encoded%22%20namespa
   ce%3D%22http%3A%2F%2Fbiomoby.org%2F%22%20encodingStyle%3D%22http%3A%2F%2Fsch
   emas.xmlsoap.org%2Fsoap%2Fencoding%2F%22%2F%3E%0A%20%20%20%20%20%20%20%20%20
   %20%20%20%20%20%20%20%20%3C%2Fwsdl%3Ainput%3E%0A%20%20%20%20%20%20%20%20%20%
   20%20%20%20%20%20%20%20%3Cwsdl%3Aoutput%3E%0A%20%20%20%20%20%20%20%20%20%20%
   20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3Csoap%3Abody%20use%3D%22encode
   d%22%2F%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%3C%2Fwsdl%3
   Aoutput%3E%0A%20%20%20%20%20%20%20%20%20%20%3C%2Fwsdl%3Aoperation%3E%0A%20%2
   0%3C%2Fwsdl%3Abinding%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%
   0A%20%20%3Cwsdl%3Aservice%20name%3D%22ASimpleServiceService%22%3E%0A%20%20%2
   0%20%20%20%20%20%20%20%3Cwsdl%3Adocumentation%3EAuthority%3A%20llama.med.har
   vard.edu%20%20-%20%20A%20simple%20service%20for%20testing%20purposes.%0AEnte
   r%20or%20edit%20the%20description%20of%20service%20ASimpleService.%0A%0A%3C%
   2Fwsdl%3Adocumentation%3E%20%20%3C!--%20service%20description%20goes%20here%
   20--%3E%0A%20%20%20%20%20%20%20%20%20%20%3Cwsdl%3Aport%20name%3D%22ASimpleSe
   rvicePort%22%20binding%3D%22tns%3AASimpleServiceBinding%22%3E%0A%20%20%20%20
   %20%20%20%20%20%20%20%20%20%20%20%20%20%3Csoap%3Aaddress%20location%3D%22htt
   p%3A%2F%2Fllama.med.harvard.edu%2F~fgibbons%2Fcgi%2FBGN%2Fdispatcher.pl%22%2
   F%3E%20%20%20%20%3C!--%20URL%20to%20service%20scriptname%20--%3E%0A%20%20%20
   %20%20%20%20%20%20%20%3C%2Fwsdl%3Aport%3E%0A%20%20%3C%2Fwsdl%3Aservice%3E%0A
   %0A%3C%2Fwsdl%3Adefinitions%3E%0A%0A%0A' can't be loaded: 501 Protocol
   scheme '' is not supported

   PhD, Computational Biologist,
   Harvard Medical School BCMP/SGM-322, 250 Longwood Ave, Boston MA 02115, USA.
   Tel: 617-432-3555       Fax:
   617-432-3557       [1]http://llama.med.harvard.edu/~fgibbons

References

   1. http://llama.med.harvard.edu/~fgibbons



More information about the MOBY-dev mailing list