NetBeans 7.0 and JAX-RPC Web Services


Sometimes, you encounter old WSDL service definitions, based on RPC style SOAP instead of the newer Document based litteral encoding.

To discover wether a WSDL is using RPC or literal encoding, check the “style” parameter of the “binding” element, such as

<binding name="A_WebServiceBinding" type="tns:A_WebServiceRPC">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"/>

In Java, RPC based SOAP is implemented by JAX-RPC, a quite old API developed for Java 1.4.  As it is older than JAXB, it even implements its own XML to Java object mapping.

When SOAP 1.2 was released, the Java platform switched to the newer JAX-WS implementation to support it along with other stuffs, namely HTTP Binding (aka XML over HTTP without SOAP), a new data mapping model and support for WS-I basic profile 1.1

You can read this IBM article for a very good, while concise, description of JAX WS vs JAX RPC.

In NetBeans 7.0, only JAX WS is provided out of the box.  When you encounter older WSDL, based on RPC encoding, you must manually install JAX-RPC.  However this plugin is not provided in the default plugin repository anymore.  You will need to add another plugin repository :

  • Select “Tools” in the menu, then “Plugins”, then the “Settings” tab.
  • Add a Repository with the name you choose and this URL : http://deadlock.netbeans.org/hudson/job/nbms-and-javadoc/lastStableBuild/artifact/nbbuild/nbms/updates.xml.gz

  • Then go back to “Available Plugins” and type RPC in the search box, you should find JAX-RPC in the list of proposed plugins.
  • Follow the instructions to download and install the plugins.

Et voilà, you are now ready to create JAX RPC based Java clients by choosing the “File” menu, then “New File” then choose “Web Service Clients” in the “Web Services” section.

Enjoy !

, , , , ,

  1. #1 by DanDLC on 08/09/2011 - 22:22

    Thanks, You save my day..!

  2. #2 by Karim on 14/09/2011 - 12:57

    Hi, thank you so much, this is helpful, but I’m having troubleshooting calling a web service rpc based, for the first time seams everything ok until I get : “Wscompile script failed during initial client generation”.
    thank you in advance for your help!

  3. #3 by David2004 on 07/10/2011 - 17:49

    Thanks! it worked on the 7.1 beta as well!

  4. #4 by Francisco on 23/11/2011 - 17:11

    Muchas gracias!! Thank you very much!!

  5. #5 by Steffi2011 on 02/12/2011 - 05:06

    Thanks a lot. This really helps :)

  6. #6 by egg on 06/01/2012 - 11:45

    Is the URL for the plugin still working? I’m having dificulties in conecting to the specified URL.
    Thank you.

  7. #7 by Ant on 06/01/2012 - 14:47

    Any updates on the availability of the plugin URL I am also having difficulties connecting

    Thanks

  8. #8 by Ran on 07/01/2012 - 00:09

    I am also interested in knowing any updates on the URL, I keep on getting 404.

  9. #9 by sst on 07/01/2012 - 19:38

    I am sorry to hear that the URL I provided is not valid anymore. I am not part of the NetBeans team, nor part of Oracle anymore, I really can not help. More efficient way to solve this is to email the netbeans team directly through one of the means provided here http://netbeans.org/about/contact.html

  10. #10 by Oscar Cala on 14/01/2012 - 17:56

  11. #11 by thy tith on 06/04/2012 - 09:16

    i can’t fix wsdl with web service client generate
    it is still error while import schema from wsdl file.
    miss address./

    thx,

  12. #12 by ANDRES on 11/07/2012 - 08:38

    mucho wuebon ..donde esta la dir

  13. #13 by Hynex on 04/08/2012 - 03:14

    Thanks a lot!!! :DDD!!!!!!!

  14. #14 by rashmani on 10/11/2012 - 04:56

    Thanks a lot!
    It works a charm!

    rash*

  15. #15 by Mircea on 28/11/2012 - 16:25

    Thank you very much. Thank you.

  16. #16 by Christopher on 29/11/2012 - 03:53

    This was right on time.
    Thank you!

  17. #17 by rateeeh on 21/03/2013 - 03:02

    thanks a lot. it’s really help me. :D

  18. #18 by Nilesh patil on 15/04/2013 - 13:02

    Thanks for information , good document

  19. #19 by Abuabdullah on 14/05/2013 - 13:02

    Thanks dear, it really helped me :)

  20. #20 by michael on 15/05/2013 - 13:29

    i successfully download ng wsdl file, but when i run the code i hava a error

    ay 15, 2013 7:07:47 PM com.sun.xml.messaging.saaj.soap.MessageImpl identifyContentType
    SEVERE: SAAJ0537: Invalid Content-Type. Could be an error message instead of a SOAP message
    java.rmi.RemoteException: HTTP Status-Code 502: Proxy Error ( The ISA Server denied the specified Uniform Resource Locator (URL). ); nested exception is:
    HTTP Status-Code 502: Proxy Error ( The ISA Server denied the specified Uniform Resource Locator (URL). )
    at test.AdministrationService_Stub.remoteAdministrationCall(AdministrationService_Stub.java:143)
    at testfin.TESTFIN.main(TESTFIN.java:47)
    Caused by: HTTP Status-Code 502: Proxy Error ( The ISA Server denied the specified Uniform Resource Locator (URL). )
    at com.sun.xml.rpc.client.http.HttpClientTransport.invoke(HttpClientTransport.java:114)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:96)
    at test.AdministrationService_Stub.remoteAdministrationCall(AdministrationService_Stub.java:126)
    … 1 more

    please help

  21. #21 by Sébastien Stormacq on 15/05/2013 - 14:43

    Sorry – I can not provide 1-to-1 developer support on this blog. Th eHTTP 502 error means your proxy can not find the url you specified.

  22. #22 by Victor on 13/08/2013 - 16:38

    Not work in netbeans 7.5 with java ee 7, after install this plugin netbeans not work correctly anymore

  23. #23 by meno on 04/12/2013 - 14:12

    Thanks alot it worked for me in netbeans 7.4 with jdk 1.7_45.

  24. #24 by George on 11/12/2013 - 08:26

    Thank you! Although it didn’t work on Netbeans 7.2 and actually crushed it, with 7.4 it works just fine.

  25. #25 by Emanuele on 23/01/2014 - 11:51

    Great, thanks a lot!

  26. #26 by Tunde Michael on 18/02/2014 - 17:15

    Very very helpful! Works fine. Thanks!

  27. #27 by John Simmons on 17/04/2014 - 22:11

    I’ve done this on Netbeans 7.4 (Windows) and got a bunch of errors on restart. Uninstalling the JAX-RPC plugin completely borked my Netbeans install, to the point where the IDE doesn’t accept any keyboard input anymore. I’m not saying this is a bad article, maybe I did something wrong, for all I know I simply followed the steps. Just wanted to point out that installing this plugin is somewhat risky.

  28. #28 by Beto on 30/04/2014 - 17:43

    Perfect! Now I’m consuming webservices made ​​in Delphi… (from Brazil)

(will not be published)