Hi thanks for responding. i turned on validation on the client side and it through an exception where i expected it to - so i'm pretty sure their response is not correct. (i couldn't find the validate option in soapUI)
as far as the interpretation of the w3c reference, i think you're quite right and that makes more sense - also feeds into why their response is not correct. and there is no default namespace defined in the response that i can see. the relevant portion of the wsdl is pasted below (the whole thing is rather large). i have pasted the 'bad' response i'm getting again below this: --- wsdl --- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dx5=" http://domain.com/VaPAS.flowSrvs:captureDetails/CaptureDetailsResponse" targetNamespace=" http://domain.com/VaPAS.flowSrvs:captureDetails/CaptureDetailsResponse"> <xsd:element name="CaptureDetailsResponse" type="dx5:CaptureDetailsResponse" /> <xsd:complexType name="CaptureDetailsResponse"> <xsd:sequence> <xsd:element name="SubjectID" nillable="true" type="xsd:string" /> <xsd:element name="URN" nillable="true" type="xsd:string" /> <xsd:element name="URL" nillable="true" type="xsd:string" minOccurs="0" /> </xsd:sequence> </xsd:complexType> </xsd:schema> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:dx6="http://domain.com/VaPAS.flowSrvs:captureDetails" targetNamespace="http://domain.com/VaPAS.flowSrvs:captureDetails"> <xsd:element name="ServiceStatusCode" type="xsd:string" /> <xsd:element name="ServiceStatusDescription" type="xsd:string" /> </xsd:schema> <xsd:complexType name="captureDetailsResponse"> <xsd:sequence> <xsd:element ref="dx5:CaptureDetailsResponse" /> <xsd:element ref="dx6:ServiceStatusCode" /> <xsd:element ref="dx6:ServiceStatusDescription" minOccurs="0" /> </xsd:sequence> </xsd:complexType> ------------------------------------------------------- --- response --- <?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:xml="http://www.w3.org/XML/1998/namespace" xmlns:xsd=" http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <SOAP-ENV:Header xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope" xmlns:SOAP-ENC="http://www.w3.org/2003/05/soap-encoding"></SOAP-ENV:Header> <SOAP-ENV:Body> <ser-root:captureDetailsResponse xmlns:ser-root=" http://domain.com/VaPAS/webConns/provider/PAS"> <CaptureDetailsResponse xmlns:ser-root=" http://domain.com/VaPAS.flowSrvs:captureDetails/CaptureDetailsResponse"> <SubjectID>767688091</SubjectID> <URN>774947201</URN> <URL></URL> </CaptureDetailsResponse> <ServiceStatusCode xmlns:ser-root=" http://domain.com/VaPAS.flowSrvs:captureDetails">GBL.OK</ServiceStatusCode> </ser-root:captureDetailsResponse> </SOAP-ENV:Body> </SOAP-ENV:Envelope> ------------------------------------------- thanks Timothy On Fri, May 22, 2009 at 9:35 PM, Andrew Clegg <[email protected]>wrote: > 2009/5/22 Timothy Waxland <[email protected]>: > > > with the above, all is well but i can not impose that on the server > (client > > webmethods system). i fear i have missed something simple that is causing > my > > client components to not be populated with respective values. i also > > understood from my reading that the above soap response is valid (dumb > > naming aside) and that even though the prefix is not used, the fact that > it > > is declared is enough and it should also apply to child elements. from > the > > w3c recommendation i read: (http://www.w3.org/TR/REC-xml-names) > > > > <x xmlns:edi='http://ecommerce.example.org/schema'> > > <!-- the "edi" prefix is bound to http://ecommerce.example.org/schema > > for the "x" element and contents --> > > </x> > > > > so in my similar case, even though x does not include the prefix, the > > namespace prefixed by edi applies to x and all its contents. > > Unless I'm very much mistaken, the phrase 'the "edi" prefix is bound > to http://ecommerce.example.org/schema for the "x" element and > contents' doesn't mean 'the x element and all its children are in the > http://ecommerce.example.org/schema namespace'. It means, I thought, > 'anywhere you use the edi prefix in the x element or any of its > children, it will be bound to http://ecommerce.example.org/schema'. > But AFAIK unprefixed elements will still be in the default namespace. > > Apologies if that's what you meant and I'm misunderstanding... > > > in my case, > > which i believe is the same, it seems to fail. using soapUI (or even in > my > > own integration tests using a fake but running web service) the whole > thing > > works fine. but as an example the default response that soapUI generates > > uses prefixes everywhere as does my fake web service. in any case, i > believe > > the response to be valid and something on the cxf end is misinterpreting > or > > not applying the namespace correctly. > > Hard to tell much without your WSDL, but what happens when: > > (a) you right-click on the problematic message in soapUI and choose > 'Validate'? > > (b) you turn on schema validation in CXF? > > Andrew. > > > > -- > :: http://biotext.org.uk/ :: >
