[R] SSOAP fails with .types[[1]] : subscript out of bounds
Steffen Neumann
sneumann at ipb-halle.de
Tue Jun 22 08:56:57 CEST 2010
Hi,
I am trying to create a BioMoby client in R using SSOAP.
BioMoby is a normal SOAP web service, with request
and response messages wrapped in BioMoby XML dialect.
Since the particular WSDL I am having problems with
is autogenerated and used similarly by *many* services,
it would be quite important to a) fix SSOAP or
b) fix the WSDL generator.
I am a bit lost how to continue debugging here,
any clues or help to get me going ?
Thanks in advance,
Yours,
Steffen
The code:
library(SSOAP)
w = processWSDL("http://biomoby.org/services/wsdl/ipb-halle.de/MassBank_Instruments")
iface = genSOAPClientInterface(def = w, verbose=TRUE)
The output and system info:
> library(SSOAP)
>
> w = processWSDL("http://biomoby.org/services/wsdl/ipb-halle.de/MassBank_Instruments")
> iface = genSOAPClientInterface(def = w, verbose=TRUE)
Operation MassBank_Instruments
Error in .types[[1]] : subscript out of bounds
>
> traceback()
4: paste(" .elementFormQualified", .elementFormQualified, sep = " = ")
3: paste("function(", paste(c(sapply(names(.operation at parameters),
convertToSName), paste("server = .defaultServer, .convert = ",
converter, ", .opts = list(...), ...")), collapse = ",\n\t "),
paste(",\n\t nameSpaces = ", ifelse(is.na(nameSpaces), nameSpaces,
simple.dQuote(nameSpaces))), if (insertSoapHeader) ", .soapHeader = NULL",
")\n{\n", fixes[1], "\t .SOAP(server, .operation at name, ",
"\n\t\t", dotArgs, if (length(.operation at parameters)) ", " else "",
"\n\t\t", "action = .operation at action, ", "\n\t\t", "xmlns = .operation at namespace, ",
"\n\t\t", ".types = .operation at parameters, ", "\n\t\t", ".convert = .convert,",
"\n\t\t", ".header = .header,", "\n\t\t", ".opts = .opts ",
if (!is.na(.operation at use["input"]) && .operation at use["input"] ==
"literal") ",\n\t\t .literal = TRUE", ", nameSpaces = nameSpaces,",
paste(" .elementFormQualified", .elementFormQualified, sep = " = "),
if (insertSoapHeader) ", .soapHeader = .soapHeader", ")\n",
fixes[2], "\n}", sep = "")
2: createOperationDefinition(i, server, def at types, env, nameSpaces,
addSoapHeader)
1: genSOAPClientInterface(def = w, verbose = TRUE)
> sessionInfo()
R version 2.10.1 (2009-12-14)
x86_64-pc-linux-gnu
locale:
[1] LC_CTYPE=en_GB.utf8 LC_NUMERIC=C
[3] LC_TIME=en_GB.utf8 LC_COLLATE=en_GB.utf8
[5] LC_MONETARY=C LC_MESSAGES=en_GB.utf8
[7] LC_PAPER=en_GB.utf8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.utf8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] SSOAP_0.5-5
loaded via a namespace (and not attached):
[1] RCurl_1.3-0 XML_3.1-0 XMLSchema_0.1-4
--
IPB Halle AG Massenspektrometrie & Bioinformatik
Dr. Steffen Neumann http://www.IPB-Halle.DE
Weinberg 3 http://msbi.bic-gh.de
06120 Halle Tel. +49 (0) 345 5582 - 1470
+49 (0) 345 5582 - 0
sneumann(at)IPB-Halle.DE Fax. +49 (0) 345 5582 - 1409
More information about the R-help
mailing list