Hi,
I have more information about this problem. I have a scenario to
reproduce the problem.
Our web service is defined with a WSDL divided in three parts. First we
have a concrete WSDL (defining the Service and the Binding). This WSDL
imports an abstract WSDL (defining the PortType and the Messages).
Finally the abstract WSDL imports a XSD Schema (defining the Types).
I found out that the WSDL cannot be displayed in my browser because
there is a *conflict* between two prefixes:
In the concrete WSDL, we defined the prefix 'tns' for our namespace. The
prefix 'tns' is also used in the abstract WSDL for another namespace.
With Axis2.1.2, this situation prevents the WSDL to be displayed in the
browser, whereas with Axis2.1.1.1, everything works fine.
I changed one of the occurrences of the prefix 'tns' to 'tns2' and then
Axis2.1.2 can display the WSDL in the browser, just fine.
It seems that this is a regression of Axis2.1.2. If there is no JIRA bug
already about this, I will open one.
Stephane Roy
Alcatel-Lucent
Stephane Roy wrote:
Hi,
I noticed a problem with the latest release of Axis2 (2.1.2).
Once my code is generated, compiled and deployed for the server side, I
try to display the related WSDL in my browser, by clicking on the line
of my service in the http://localhost:8080/axis2/services/listServices
page.
The page http://localhost:8080/axis2/services/<myService>?wsdl opens
with an error:
org.apache.axis2.AxisFault: WSDLException: faultCode=OTHER_ERROR: Can't
find prefix for
'http://www.alcatel-lucent.com/wsp/ns/2007/04/16/3DN-01401/phonebookService'.
Namespace prefixes must be set on the Definition object using the
addNamespace(...) method.
org.apache.axis2.description.AxisService.printWSDL(AxisService.java:850)
org.apache.axis2.transport.http.ListingAgent.processListService(ListingAgent.java:221)
org.apache.axis2.transport.http.AxisServlet.doGet(AxisServlet.java:225)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
In Axis2.1.1.1, with the same WSDL, it worked fine.
In Axis2.1.2, I tried to generate the code in adb mode, then in xmlbeans
mode but I have the same problem.
What bothers me is that the WSDL of the web service Version
(http://localhost:8080/axis2/services/Version?wsdl), delivered with
Axis2.1.2, can be displayed without error.
I would like to know if someone had this kind of problem before.
Is this behavior a known issue or a limitation of Axis2.1.2 ?
Thanks in advance.
Stephane Roy
Alcatel-Lucent
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]