my dog learned polymorphism*
The moose likes Web Services and the fly likes WSDL error: binding:StocksQuoteSOAPBinding not exist Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of The Java EE 7 Tutorial Volume 1 or Volume 2 this week in the Java EE forum
or jQuery UI in Action in the JavaScript forum!
JavaRanch » Java Forums » Java » Web Services
Bookmark "WSDL error: binding:StocksQuoteSOAPBinding not exist" Watch "WSDL error: binding:StocksQuoteSOAPBinding not exist" New topic
Author

WSDL error: binding:StocksQuoteSOAPBinding not exist

prasad regula
Greenhorn

Joined: Jul 03, 2006
Posts: 24
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



PRSubject
R Srini
Ranch Hand

Joined: Feb 19, 2010
Posts: 215
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

Joined: Oct 04, 2006
Posts: 2198
    
    1
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
 
subject: WSDL error: binding:StocksQuoteSOAPBinding not exist