Bug 749375

Summary: [RFE] Dynamic WSDL retrieval over HTTP using ?wsdl convention doesn't work for Aviary
Product: Red Hat Enterprise MRG Reporter: Pete MacKinnon <pmackinn>
Component: condor-aviaryAssignee: grid-maint-list <grid-maint-list>
Status: CLOSED WONTFIX QA Contact: MRG Quality Engineering <mrgqe-bugs>
Severity: low Docs Contact:
Priority: low    
Version: DevelopmentCC: matt, tstclair
Target Milestone: ---Keywords: FutureFeature
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-26 20:01:56 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Pete MacKinnon 2011-10-26 20:31:59 UTC
Technical Debt:

Clients should be able to retrieve the Aviary WSDL and imported schema definitions dynamically by using the advertised URL appended with ?wsdl like:

http://localhost:9091/services/query?wsdl

However, this doesn't currently work and results in a parse error from the Axis2/C engine.

XML Parsing Error: no element found
Location: http://localhost:9091/services/query?wsdl
Line Number 1, Column 1:

It's unclear if this is a matter of REST configuration or perhaps the <soap:address location=...> element plays a role in WSDL retrieval.

Comment 1 Pete MacKinnon 2011-10-27 14:24:45 UTC
After further investigation and code walkthrough, not looking great. Axis2/C doesn't support dynamic WSDL generation but it does allow for service configuration to attach the WSDL file.

<parameter name="wsdl_path" locked="xsd:false">/var/lib/services/query/aviary-query.wsdl</parameter>

However, that just renders the WSDL file literally and doesn't parse the <xsd:import ...> statement so no way to render the types files unless they were hosted somehow from the stack or elsewhere over HTTP.