Duncan Temple Lang a écrit :


Olivier Cailloux wrote:
Dear list,

I am trying to use the SSOAP package to access a very simple SOAP service, included as a demonstrator in the axis2 Apache package: "Version" (takes no input parameters and should return a string with the version number). The web service itself seems to be working as I could access it using an other client (eclipse Web Server tester).

You will find the service wsdl here: http://smg8.ulb.ac.be:8080/axis2/services/Version?wsdl, and informations on the other services I tried here: http://smg8.ulb.ac.be:8080/axis2/services/listServices.

I used the following commands:
   library("SSOAP")
smg8Version <- SOAPServer("smg8.ulb.ac.be", "axis2/services/Version", 8080) .SOAP(smg8Version, "getVersion", action=I("VersionHttpSoap11Endpoint"))

The first command seems to give a proper smg8Version object, but the second one fails with "Error: evaluation nested too deeply: infinite recursion / options(expressions=)?".


The best thing to do is find where the error is occurring.
You can step through the .SOAP call and see where the problem arises.

The issue is in fromXML when converting the result.
In the separation of the code in the SSOAP package into
SSOAP and XMLSchema, I overlooked some methods for the fromXML()
function for cases where no type information is available.
There is now a new version (0.1-1) of XMLSchema on the Omegahat web site.

When reporting problems such as these, it is important to provide
information about what OS, version of R, and the different packages
you are using. The code above involves the SSOAP, XML, RCurl and XMLSchema packages.
Sorry about that, my e-mail has been sent too soon by mistake (also from an incorrect exp. address). I was planning to add further details.

So I'm running Debian Lenny. sessionInfo() gives:
R version 2.7.1 (2008-06-23)
i486-pc-linux-gnu

locale:
C

attached base packages:
[1] stats graphics grDevices utils datasets methods base
Package:       SSOAP
Version:       0.5-0
Date:          2009/05/04
Package:              XML
Version:              2.3-0
Date:                 2009/03/04
Package:              RCurl
Version:              0.97-3
Package:       XMLSchema
Version:       0.1-0

I must be stupid but I can't find XMLSchema on the omegahat website. (I just installed the 0.1-0 version a few days ago when trying to use SSOAP.) Google gives nothing useful for "XMLSchema site:omegahat.org".

I'm beginner in both web services and R programming (my knowledge is more in desktop & CORBA Java programming). I am simply trying to make Java and R communicate (call Java code from R remotely), for use by someone else who works in R. I'd like to provide him with a fully functional example. I must recognize that having to step through SSOAP code to find where the problem lies might be too difficult considering my current knowledge (knowing I don't intend to become an expert R programmer). Please don't take it as rude or implying that I'm simply expecting someone to solve the problem for me: I am ready to investigate but I'd simply like to have an idea of how difficult it will be. If I have to patch part of SSOAP or if you think that the functions I need are not implemented yet, then I'd better not insist and try to communicate from R to Java using an other way. If on the other hand you think it should be working and is simply a matter of using the right version of the right package, or using an other web services platform on the Java side, or configuring something differently, etc., then I'll happily dig into it.

More generally, if someone has a suggestion on what to use to call Java over TCP/IP from R, I'd be interested. I am currently considering OSS as well as SSOAP. I'd prefer learning an approach that I can reuse for other languages, so possibly a standard like SOAP or CORBA would be best.

Thanks for any pointer.
Olivier


 D.




I tried different "action" values, because I don't know what I should put there. But I always get the same error.

Also, FYI, the following command produces the following output:
smg8Def <- processWSDL("http://smg8.ulb.ac.be:8080/axis2/services/Version?wsdl";, verbose=TRUE)
processing (sub) schema http://axisversion.sample
1 ) Exception
2 ) Exception
3 ) getVersionResponse
Warning message:
In processWSDL("http://smg8.ulb.ac.be:8080/axis2/services/Version?wsdl";, :
 Ignoring additional <service><port> ... elements

and then

I also tried a simpler service (WSDL manually created myself, but I am not sure it is correct although it validates): smg8EchoDef <- processWSDL("http://smg8.ulb.ac.be:8080/axis2/services/EchoService?wsdl";, verbose=TRUE)
processing (sub) schema http://smg8.ulb.ac.be/echoSvc/
1 ) TheString
   genSOAPClientInterface(def = smg8EchoDef)
Error in d...@operations[[1]] : subscript out of bounds
Indeed:
   length(smg8echo...@operations)
[1] 0

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to