title: How to make a stubless Web Service Client in Java?
body: <p>We are using Axis2 in our enterprise currently. Our project involves making call to multiple webservices for fault diagnostics. The problem is that very frequently we have changes in WSDLs (which are non-life threatening as in new data-types and services just get added, very rarely is something dropped) due to which we have to upgrade our application as well. Basically, we have a to get a new copy of the WSDL, run it through WSDL2java and use the new jars, run our unit tests and package the new jars and install on production.</p>
  
  <p>Although the capability of generating the stubs at compile team gives us xmlbeans with which we can work easily in our java DAO layer code, this compile-deploy cycle due to WSDLs consume the team's time. I was wondering whether there is any change possible? Is there any Java APIs which can generate stubs at run-time or provide stub-less web service invocation, but still give us ability to work with java objects rather than handcrafting request documents? Something like <a href="http://www.soapclient.com/soaptest.html" rel="nofollow noreferrer">this soap test site</a>. I should just be able to specify a WSDL location and I should just get an object with which I can access the document (both request and response) and also be able to change the WSDL location at run-time? </p>
  
  <p>Not sure whether this type of run-time behavior is possible in Java since objects generated at run-time would have different types etc?? not sure... I have seen some Groovy examples which come close to what I want but using Groovy means an architectural change for us.. and that's a bit tough... Is there any Java library/API available?</p>