You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Raj K (Jira)" <ji...@apache.org> on 2022/04/15 19:43:00 UTC

[jira] [Created] (AXIS2-6033) wsdl import locations are not getting updated correctly if wsdl is we are importing .wsdl file in wsdl file

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: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org