File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

WSDL error: binding:StocksQuoteSOAPBinding not exist

 
prasad regula
Greenhorn
Posts: 24
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am developing web services with contract first approach. I developed the wsdl file and now I am ecuting the wsdl2java command. In that process I am getting the following error. I am also pasting the wsdl file below that



The wsdl file is pasted below

 
R Srini
Ranch Hand
Posts: 215
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Prasad, I just tried it myself using the wsimport from NetBeans, and got the same error. I have typically observed that the URLs for targetNamespace and tns are the same. In the current wsdl, they are different. Once I changed that, that particular error went away.

Instead of this:
targetNamespace="http://stocksquote.com/StocksQuote.wsdl"
xmlns:tns="http://www.stocksquote.com/StocksQuote.wsdl"

Please try this:
targetNamespace="http://www.stocksquote.com/StocksQuote.wsdl"
xmlns:tns="http://www.stocksquote.com/StocksQuote.wsdl"

And now, I get another error:

[WARNING] s4s-att-not-allowed: Attribute 'location' cannot appear in element 'import'.
line 13 of file:/C:/Srini/StocksQuote.wsdl#types?schema1

I think the attribute should be "schemaLocation" instead of "location". Anyway, once you figure it out, please let us know what you fixed.

But I have another question: Do the tns and targetnamespace always have to be the same in a schema/xsd? Or can they be different?
 
Ivan Krizsan
Ranch Hand
Posts: 2198
1
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi!
If the target namespace is set to one namespace, for instance http://stocksquote.com/StocksQuote.wsdl, and there is no namespace prefix specified for this namespace, then this will be the default namespace and items belonging to this namespace must not be prefixed by any namespace prefix.
In the original WSDL, with this:
targetNamespace="http://stocksquote.com/StocksQuote.wsdl"
xmlns:tns="http://www.stocksquote.com/StocksQuote.wsdl"

The target namespace is not the same as the namespace that has the tns namespace prefix.
The namespace prefix, tns in the above case, is arbitrary. You can give a namespace prefix any name you want. Example:

Usually namespace prefixes are given shorter names...
Hope this clarifies things!
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic