Hi Devs, Right now Axis2 s' ServiceClient(Dynamic serviceClient) does not support WSDL2 as it argument. I did few changes to the Code and now it supports WSDL2 as well. But I would like to draw your attention regarding few issues.
1. In order to support both WSDL11 & WSDL20 without changing the method signature of the ServiceClient we need to identify the Given WSDL using the namespace. 2. In the current code It uses a dom Element to Represent the WSDL.But in this scenario we need to check the namespace and if it is a WSDL11 Get the javax.wsl.Definition from the reader or else if it is WSDL20, serialize it and write it to a output stream so we can get it as a input stream to build a AxisService out of WSDL20. 3.since the current implementation uses dom element this mechanism results in a double parsing when its a WSDL20.possible solution is using Axiom instead of dom so that when namespace checking it does not parse the entire WSDL. 4. So i replaced Dom with Axiom and used Doom to create the Dom element out of Axiom element when need to fed to the readWSDL() method of the WSDL reader. WDYT devs? comments ,suggestions are mostly welcome. The patch related to this issue can be found in [1] Thanks in advance, Pradeep Fernando. [1] https://issues.apache.org/jira/browse/AXIS2-4253