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

Freeman Fang commented on CXF-5216:
-----------------------------------

Per Bin Zhu last reply in mail list, the solution here works for him so I will 
close this issue.
                
> WSDL definition cache issue for web service client when WSDL in service war 
> changed
> -----------------------------------------------------------------------------------
>
>                 Key: CXF-5216
>                 URL: https://issues.apache.org/jira/browse/CXF-5216
>             Project: CXF
>          Issue Type: Bug
>    Affects Versions: 2.6.2
>            Reporter: Bin Zhu
>            Assignee: Freeman Fang
>         Attachments: CXF-5216-2.patch, CXF-5216.patch
>
>
> In current design, the WSDL definition will be cached in case the the same 
> wsdl will be queried later.(WSDLManagerImpl.getDefinition)
> e.g.
>     public Definition getDefinition(String url) throws WSDLException {
>         synchronized (definitionsMap) {
>             if (definitionsMap.containsKey(url)) {
>                 return definitionsMap.get(url);
>             }
>         }
>         return loadDefinition(url);
>     }
> The cache mechanism indeed improves the performance in most scenarios. But if 
> the WSDL file in service provider app changed, the client will not get the 
> correct WSDL definition even using retrieves the wsdl from server dynamically 
> (http://hostname:portname/xxx?wsdl),unless restarting the client app.
> It would be more reasonable to introduce a client property to allow user to 
> disable the definition cache so that they can choose if they get WSDL 
> definition from cache or the URL dynamically for their scenarios. Any 
> thoughts? Thanks.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to