[cl-sockets-devel] wsdl parsing
Utz-Uwe Haus
haus+cl-soap at mail.math.uni-magdeburg.de
Mon Oct 29 21:20:53 UTC 2007
Hi,
On Mon, Oct 29, 2007 at 06:08:57PM +0000, Christophe Rhodes wrote:
> I'm afraid it doesn't seem to help me.
Sorry to see that.
> Firstly, I had to alter a couple of things in your patch to s-xml to
> get it to compile:
Thanks. ACL does not check declarations as much as SBCL, and I must have
mixed some things up there.
> * The previously-working hand-built call to soap-call:
>
> (let ((ns "http://tempuri.org/adb.xsd"))
> (s-xml:register-namespace ns "adb" :adb)
> (let ((xmethods (make-soap-end-point "http://gibbons.doc.gold.ac.uk:20703")))
> (soap-call xmethods nil `((adb::|status| :|xmlns:adb| ,ns) (:|dbName| "/tmp/foodb")))))
>
> gives an infinite recursion; a section of the backtrace is
>
> 14: (S-XML::DEDUCE-NAMESPACE-FROM-NAMESPACE-ENTRY
> "http://schemas.xmlsoap.org/soap/envelope/"
> "SOAP-ENV"
> :ALL)
> 15: (S-XML::FIND-NAMESPACE-IN-MAP
> "http://schemas.xmlsoap.org/soap/envelope/"
> "SOAP-ENV"
> #<unavailable argument>)
I'll look into that. Apparently your namespace registration did not
make it into the namespace map properly. When I last looked at that in
s-xml I had to make some seemingly reasonable assumptions because there
was (is?) no proper namespace map support. Maybe one of those failed.
> * trying to call the service automatically from the wsdl,
>
> (wsdl-soap-call "http://omras2.doc.gold.ac.uk/adb.wsdl" "status" :input `("status" ("dbName" "/tmp/foodb")))
>
> gives a type error in BIND-XSD-TEMPLATE:
>
> The value (LAMBDA () :STRING) is not of type (OR FUNCTION SYMBOL).
>
> and the backtrace there is
actually looking pretty reasonable.
I'll see what I can do,
Utz
--
Utz-Uwe Haus haus at mail.math.uni-magdeburg.de
Inst. f. Mathemat. Optim. utz at uuhaus.de
Uni Magdeburg PGP keys 1024/6AD23BE1 and 2048/5D0B72A1
GERMANY available via keyservers or email request
More information about the cl-soap-devel
mailing list