On Monday 09 August 2010 4:41:49 am ggsoft wrote: > Does anyone have an answer to this?
Honestly, I've never read that paper. However, from CXF's perspective, if you don't call an Endpoint.publish (or have an jaxws:endpoint) with the appropriate Service/Port, it really won't have a URL or anything to inject into that port in the wsdl and it would leave it alone. Dan > Am 28.07.2010 14:21, schrieb ggsoft: > > Hi all, > > > > today i was thrown into the exact same problem as i found described > > by Goran on this mailing list. > > Is there any solution to this? > > > > Regards > > ggsoft > > Hi, > > > > I want to add a minor version update with backward compatibility (add > > service method) to a existing web service build with cxf. > > > > What I have done so far is all the steps proposed in this paper > > http://blogs.iona.com/sos/20070410-WSDL-Versioning-Best-Practise.pdf. > > Additionally, I've added second implementation of the web service. In the > > cxf-servlet.xml file, I've modified the endpoint element > > > > to the new version of the service running on the same address. > > > > > > <jaxws:endpoint id="Service-v1d1" implementor="#serviceV1d1Ws" > > wsdlLocation="Service-v1.wsdl" address="/service/1"> > > <jaxws:properties> > > <entry key="schema-validation-enabled" value="true" /> > > </jaxws:properties> > > <jaxws:inInterceptors> > > <ref bean="accessControlInterceptor" /> > > <ref bean="logInboundInterceptor"/> > > </jaxws:inInterceptors> > > <jaxws:outInterceptors> > > <ref bean="logOutboundInterceptor"/> > > </jaxws:outInterceptors> > > </jaxws:endpoint> > > > > Now, for the issue I encountered: > > > > 1. when I try to call the web service from a client with the 1.0 > > implementation, the client is throwing an java.net.MalformedURLException > > because the soap address for the 1.0 version is still 'service/1' and not > > a fully functional address like it is for 1.1 - > > http://localhost:8081/web-service/service/1. > > This is what I see in browser for the service definitions in the wsdl: > > > > <wsdl:service name="Service_v1_0"> > > <wsdl:port binding="tns:Service_v1_0_SoapBinding" name="Service"> > > <soap:address location="service/1"/> > > </wsdl:port> > > </wsdl:service> > > > > <wsdl:service name="Service_v1_1"> > > <wsdl:port binding="tns:Service_v1_1_SoapBinding" name="Service"> > > <soap:address location="http://localhost:8081/web-service/service/1"/> > > </wsdl:port> > > </wsdl:service> > > > > I don't see why the soap address isn't generated for both versions of the > > service. Any help will be appreciated. Thanks. -- Daniel Kulp [email protected] http://dankulp.com/blog
