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 (Jira)" <ji...@apache.org> on 2022/05/02 18:44:00 UTC

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

    [ https://issues.apache.org/jira/browse/AXIS2-6033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17530895#comment-17530895 ] 

Raj commented on AXIS2-6033:
----------------------------

Ran few tests and verified the above suggested code is resolving the import issue.

Please let me know the estimated timeline/version when this issue can be resolved in axis kernel release

> 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.7.9, 1.8.0
>            Reporter: Raj
>            Priority: Major
>
> 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.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org