Difference between revisions of "Web services package"

From VistrailsWiki
Jump to navigation Jump to search
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
* ''Tommy investigate what a good web service library that can be integrated with VisTrails''
* Assigned to Tommy
* Now using SUDS library
** Emanuele's pointers:
** Emanuele's pointers:
*** It is important to have in mind that we need to create Modules for methods and types on the fly. [http://pywebsvcs.sourceforge.net/ ZSI] provided a way to generate class stubs for all methods and types in a wsdl file and VisTrails used those to create the Modules. I believe the other libraries can't do that so we might have to do that ourselves.
*** It is important to have in mind that we need to create Modules for methods and types on the fly. [http://pywebsvcs.sourceforge.net/ ZSI] provided a way to generate class stubs for all methods and types in a wsdl file and VisTrails used those to create the Modules. I believe the other libraries can't do that so we might have to do that ourselves.
*** Potential library: [https://fedorahosted.org/suds/ SUDS]
*** Potential library: [https://fedorahosted.org/suds/ SUDS]
**** Tommy: It looks like a good alternative.
**** Simple interface
**** Simple interface
**** The WSDL can be cached in different ways.
**** The WSDL can be cached in different ways.
Line 22: Line 22:
*** KEGG_SearchEntities_webservice: OK
*** KEGG_SearchEntities_webservice: OK
*** KEGG_webservices: OK
*** KEGG_webservices: OK
*** noaa_webservices: "1" has Been appended to method names. Bug/change in wsdl file? (looks like bug)
*** noaa_webservices: "1" has Been appended to method names. Bug/change in wsdl file? (looks like bug) OK (works now)
*** protein_visualization: OK
*** protein_visualization: OK
*** structure_or_id_webservice: OK
*** structure_or_id_webservice: OK
** Status of translating examples to the new WebService package
*** chebi_webservice: OK
*** chembiogrid_webservice: Cannot construct (original broken)
*** DataTransformation_webservice: OK (But service terminated)
*** DDBJ_webService: Cannot construct (original broken)
*** EMBOSS_webservices: OK (had to handle base64 encoding and add an enum module)
*** EntrezGeneToKEGG Pathway: OK (Identical to KEGGPathway)
*** KEGGPathway: OK
*** KEGG_SearchEntities_webservice: OK
*** KEGG_webservices: OK
*** noaa_webservices: OK
*** protein_visualization: OK
*** structure_or_id_webservice: OK
** Proxy now works
** Related tickets
*** [https://vistrails.sci.utah.edu/ticket/339]
*** [https://vistrails.sci.utah.edu/ticket/340]

Latest revision as of 17:02, 4 November 2010

  • Assigned to Tommy
  • Now using SUDS library
    • Emanuele's pointers:
      • It is important to have in mind that we need to create Modules for methods and types on the fly. ZSI provided a way to generate class stubs for all methods and types in a wsdl file and VisTrails used those to create the Modules. I believe the other libraries can't do that so we might have to do that ourselves.
      • Potential library: SUDS
        • Simple interface
        • The WSDL can be cached in different ways.
        • Complex types can be stored as dict's.
      • This page on stackoverflow can also be useful: What's the best SOAP client library for Python, and where is the documentation for it?
      • Here's how Taverna handles Web Services:
        • http://www.taverna.org.uk/introduction/services-in-taverna/ the model is that any "plain" SOAP service can be used immediately, given the URL of its WSDL specification, while some special collections like caGrid, Biomoby and other services need a Taverna plugin to be used, due to their specific requirements (regarding security, for example).
        • They use Axis 1 to parse WSDLs and call web services, but built an overlay on top of Axis1 to do higher-level support, for instance caching of XSDs and header support.
        • REST support is currently under development with an alpha due out in September.
    • Status of Web Service examples in vistrails
      • chebi_webservice: OK
      • chembiogrid_webservice: There are no namespaces in the .vt file that indicates where to find the wsdl file. Namespace bug?
      • DataTransformation_webservice: Methods not available but at least a nice message: "This service was terminated. Thank you for your access."
      • DDBJ_webService: "Pipeline cannot be instantiated: Output port 'Result' has bad specification in module edu.utah.sci.vistrails.basic of package PythonSource" signature="(edu.utah.sci.vistrails.control_flow:ListOfElements)". Is this related to the removed ListOfElements type?
      • EMBOSS_webservices: OK
      • EntrezGeneToKEGG Pathway: OK
      • KEGGPathway: OK
      • KEGG_SearchEntities_webservice: OK
      • KEGG_webservices: OK
      • noaa_webservices: "1" has Been appended to method names. Bug/change in wsdl file? (looks like bug) OK (works now)
      • protein_visualization: OK
      • structure_or_id_webservice: OK
    • Status of translating examples to the new WebService package
      • chebi_webservice: OK
      • chembiogrid_webservice: Cannot construct (original broken)
      • DataTransformation_webservice: OK (But service terminated)
      • DDBJ_webService: Cannot construct (original broken)
      • EMBOSS_webservices: OK (had to handle base64 encoding and add an enum module)
      • EntrezGeneToKEGG Pathway: OK (Identical to KEGGPathway)
      • KEGGPathway: OK
      • KEGG_SearchEntities_webservice: OK
      • KEGG_webservices: OK
      • noaa_webservices: OK
      • protein_visualization: OK
      • structure_or_id_webservice: OK
    • Proxy now works
    • Related tickets