Any idea on this guys? My QA team cannot parse the published WSDLs for use in thier SOAPUI test. I have to zip up the WSDL in source control and manually hand it off to them right now.
Again... when the WSDL file is SUPPLIED to the service via the wsdlLocation paramter: <jaxws:endpoint id="userService" wsdlLocation="classpath:/service/user-soap-v1.wsdl" serviceName="userService:userSoapServicePorts" endpointName="userService:userSoapServicePort" ...> The URLs in the import statements of the XSD files that cxf exposes are not properly re-written. WSDL-(imports)->XSD this works fine WSDL-(imports)->XSD->(imports)->XSD this does NOT work fine. Thanks again. On Wed, Jul 2, 2014 at 8:37 AM, Lambert, Michael <[email protected] > wrote: > If this helps this is the ouput of > http://localhost:8080/user-service/userService?xsd=../schema/entity/user-v1.xsd > : > > This XML file does not appear to have any style information associated > with it. The document tree is shown below. > <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" > xmlns:tns="urn:healthmedia:schema:user:v1" > xmlns:dataSource="urn:healthmedia:schema:data-source:v1" > xmlns:common="urn:healthmedia:schema:common:v1" > attributeFormDefault="unqualified" elementFormDefault="qualified" > targetNamespace="urn:healthmedia:schema:user:v1" version="1.0"> > <xsd:import namespace="urn:healthmedia:schema:common:v1" > schemaLocation="../common/common-v1.xsd"/> > <xsd:import namespace="urn:healthmedia:schema:data-source:v1" > schemaLocation="./data-source-v1.xsd"/> > ... > </xsd:schema> > > Notice that the schemaLocation entries are not rewritten and so cannot be > retrieved by parsing the xsd. > > Thanks, > > Mike > > > On Tue, Jul 1, 2014 at 7:46 PM, Lambert, Michael < > [email protected]> wrote: > >> I have a wsdl that is being published using the following configuration: >> >> <jaxws:endpoint id="userService" >> wsdlLocation="classpath:/service/user-soap-v1.wsdl" >> serviceName="userService:userSoapServicePorts" >> endpointName="userService:userSoapServicePort" >> implementor="com.healthmedia.ws.wsdl.user.v1.UserServiceImpl" >> address="/userService" /> >> >> After starting the service I can look at the concrete wsdl class and >> everything seems okay. The schemaLocations are all properly re-wrtten: >> >> <xsd:import namespace="urn:healthmedia:schema:user:v1" schemaLocation=" >> http://localhost:8080/user-service/userService?xsd=../schema/entity/user-v1.xsd >> "/> >> <xsd:import namespace="urn:healthmedia:schema:common-error:v1" >> schemaLocation=" >> http://localhost:8080/user-service/userService?xsd=../schema/common/common-error-v1.xsd >> "/> >> >> But if I then parse either of THESE imported xsd files there is a >> problem. The imports in these files are NOT rewritten; the effect is that >> clients cannot parse my service contract. Here is the import contents from >> '" >> http://localhost:8080/user-service/userService?xsd=../schema/common/common-error-v1.xsd' >> (note the absence of the ' >> http://localhost:8080/user-service/userService?xsd=' prefix): >> >> <xsd:import namespace="http://www.w3.org/XML/1998/namespace" >> schemaLocation="../external/xml.xsd"/> >> >> This seemed to have worked before. What could i have done to cause this >> to happen? SOAPUI no longer can import my contracts. >> >> The code is in github: >> >> https://github.com/MacFlecknoe/service-repository-sample/tree/master/user/service >> >> Thanks again! >> >> >> >> >
