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 "Bjorn Townsend (JIRA)" <ax...@ws.apache.org> on 2007/04/24 03:40:15 UTC

[jira] Commented: (AXIS-2505) memory leak in wsdl generation

    [ https://issues.apache.org/jira/browse/AXIS-2505?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12491112 ] 

Bjorn Townsend commented on AXIS-2505:
--------------------------------------

I patched the Axis trunk with this fix and ran the test suite against it -- looks like it doesn't break anything, and I've verified that it seems to fix the memory leak.

> memory leak in wsdl generation
> ------------------------------
>
>                 Key: AXIS-2505
>                 URL: https://issues.apache.org/jira/browse/AXIS-2505
>             Project: Axis
>          Issue Type: Bug
>          Components: WSDL processing
>    Affects Versions: current (nightly)
>            Reporter: Christopher Sahnwaldt
>            Priority: Minor
>
> There's a memory leak in org.apache.axis.description.JavaServiceDesc.setDefaultNamespace(): 
> the method adds the given namespace to an ArrayList. This method is called from 
> org.apache.axis.wsdl.fromJava.Emitter.init(), which in turn is called from 
> org.apache.axis.providers.BasicProvider.generateWSDL() each time wsdl is generated for a service, 
> i.e. whenever .../ServiceName?wsdl is invoked.
> To reproduce start an Axis server in a debugger, invoke ...?wsdl from a browser a couple of times for 
> a certain service, and check the instance variable namespaceMappings in the JavaServiceDesc
> for that service. It grows by one element each time the wsdl is generated.
> A simple (if not very elegant) fix would be to simply remove the namespace before adding it to the list again. If it's not present, nothing happens; if it is, it's moved to the first slot:
> public void setDefaultNamespace(String namespace) {
>     if (namespaceMappings == null)
>         namespaceMappings = new ArrayList();
>     namespaceMappings.remove(namespace);
>     namespaceMappings.add(0, namespace);
> }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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