Hi I would like to second Pierre in asking for improving the interoperability of the BioMart SOAP interface. I am working in eSysbio, a project that aims, among other things, at improving the interoperability of bioinformatics web-services and to provide a standardized framework of combining web-services into workflows. BioMart is already one of the most important components in our daily analysis. We see that it is essential that services adhere to existing standards of service communication and interoperability as for example set forth by WS-I [1].
We agree with you, Syed, that the SOAP interface cannot have been tested a lot with Java clients, because currently biomart-soap is inaccessible for the whole Java-community and any clients that use validating XML parsers. To ensure interoperability, though not sufficient, it is a precondition that: 1. all artefacts (WSDL, schema) validate against their definition 2. that all messages validate against their schema definition 3. the behavior of the service is as it is described in the artifacts The second point is not the case here. We agree, that SoapUI is a good tool for testing, but it is very flexible as a debugging tool and allows for very different kinds of services. SoapUI has a built-in validation function though, right-click on a message in the XML window, then you will see that the response of getRegistry does not validate. I could however modify the response message such that it validates agains the schema definition. The non-validation of the response message is the reason for the non-functionality of the connection. See http://biostar.stackexchange.com/questions/362/anyone-using-biomart-java-web-services/384#384 for an in-depth description of the problem. The are also some glitches in WSDL which should be fixed but maybe this is most important. So may question is if you would be able to change the messages returned by the SOAP::Lite server you are using. We would be glad to assist you in this process and to continue testing the SOAP interface with different clients. If we can help with some Perl/Java, please let me know, I would really like to contribute to this great resource. Kind regards Michael [1] http://www.ws-i.org/ Michael Dondrup Post-doctoral researcher Uni BCCS Thormøhlensgate 55, N-5008 Bergen, Norway Phone: +47 55584157 Fax: +47 55584295 Am Mar 20, 2010 um 1:21 AM schrieb Syed Haider: > Hi Pierre, > > few people tried automatic object model generation with wsimport tool and i > believe axis too, and unfortunately it dint work. Usually, these java > libraries are good if you create the WSDL from the library itself. Apparantly > there isnt anything wrong with the WSDL file as it does work fine with SOAPUI > and thats where we usually test it to make sure its good. > > Best > Syed > > > Pierre LINDENBAUM wrote: >> Hi all, >> I've been trying to generate some java code from the wsdl provided by >> biomart (e.g. http://www.biomart.org/biomart/martwsdl ) >> with ${JAVA_HOME}/bin/wsimport and/or ${XJC}/bin/wsdl2java When I called >> 'getResistry()' , the generated java code always returns an empty list. >> More details on Biostar and StackOverflow: >> * http://stackoverflow.com/questions/2479069 >> * http://biostar.stackexchange.com/questions/362 >> does anyone use this web service with java ? how can I fix this problem ? >> Many thanks for your help >> Pierre Lindenbaum >> . >>
