Raj K created AXIS2-6033:
----------------------------
Summary: wsdl import locations are not getting updated correctly
if wsdl is we are importing .wsdl file in wsdl file
Key: AXIS2-6033
URL: https://issues.apache.org/jira/browse/AXIS2-6033
Project: Axis2
Issue Type: Bug
Components: wsdl
Affects Versions: 1.8.0, 1.7.9
Reporter: Raj K
In org.apache.axis2.description.AxisService#changeImportAndIncludeLocations
we are updating import locations in wsdl file and any files being imported in
the wsdl and marking the service as wsdlImportLocationAdjusted=true when the
service/wsdl is first loaded. This is having issue if we are importing a .wsdl
file in parent wsdl file.
We have below structure of wsdl
Main wsdl file - imports 2 files - bindings.wsdl and types.xsd
If main wsdl is accessed first then the import locations are getting adjusted
in all files and marking the axisservice as wsdlImportLocationAdjusted=true
But if bindings.wsdl is accessed first then the import locations in parent are
not updated. Only import location in bindings.wsdl and any imported files in
this wsdl are getting adjusted. And still the service is getting marked as
wsdlImportLocationAdjusted=true. So the parent is never processed for location
adjustments as wsdlImportLocationAdjusted is set to true
Refer below from AxisService
private synchronized void printDefinitionObject(Definition definition,
OutputStream out, String requestIP) throws AxisFault, WSDLException {
if (this.isModifyUserWSDLPortAddress()) {
this.setPortAddress(definition, requestIP);
}
*if (!this.wsdlImportLocationAdjusted) {*
this.changeImportAndIncludeLocations(definition);
this.wsdlImportLocationAdjusted = true;
}
WSDLWriter writer = WSDLFactory.newInstance().newWSDLWriter();
writer.writeWSDL(definition, out);
}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]