The problem here is that I can tell you how to control what prefixes
get used, but not how to force the use or non-use of prefixes. That is
under the control of the XMLStreamWriter, by and large. You could use
an interceptor.

On Tue, Dec 30, 2008 at 8:04 PM, William Blackburn
<[email protected]> wrote:
> Thanks for your response, I know, and I, personally do not care. But my
> problem is that I am being asked to implement a 'protocol' which contains an
> embedded 'xhtml' document consisting of xhtml plus an xform - both of which
> are ultimately to be dislplayed in an IE+formsplayer plugin window. The wsdl
> I have been provided defines this embedded item as an xml element and so
> wsdl2jave dutifully defines it as such in the resulting java model.
>
> For whatever bug-ridden reason, the combination of IE+formsplayer will not
> display namespaced xhtml and the xhtml hiding inside the larger xml document
> is being namespaced at some point, even though I have defined it using the
> xhtml namespace as default. My only theory is that cxf has already defined
> the default namespace.
>
> This, of course, is the absolute worst use-case for web services one could
> imagine, and I deny any involvement in conjuring up such a ridiculous
> 'protocol', but life is unfair and here I am.
>
> I'll probably have to redefine my web service implementation using a servlet
> and a stringbuffer to make this work.
>
>
>
>
> On Dec 30, 2008, at 4:34 PM, Benson Margulies wrote:
>
>> Why do you care? From an XML standpoint, they are exactly the same?
>>
>> I ask you this even though I'm the person who added the various tricks
>> to CXF to allow this. But it's a pain in the tail, and I don't
>> recommend it unless you really badly need it.
>>
>> On Tue, Dec 30, 2008 at 6:53 PM, William Blackburn
>> <[email protected]> wrote:
>>>
>>> I have successfully created a wsdl-first web service using wsdl2java and
>>> CXF
>>> 2.2
>>>
>>> I am now testing and see that the default namespace in the soap
>>> requests/responses generated by cxf' client/server does not use an
>>> explicit
>>> namespace prefix, for example a CXF client might emit:
>>>
>>> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope";>
>>>  <soap:Body>
>>>    <RetrieveFormRequest xmlns="urn:ihe:iti:rfd:2007">
>>>       <formID>_dummy</formID>
>>>       <encodedResponse>true</encodedResponse>
>>>       ... etc...etc...
>>>
>>> While the server would answer:
>>>
>>> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope";>
>>>  <soap:Body>
>>>      <RetrieveFormResponse xmlns="urn:ihe:iti:rfd:2007">
>>>          <form>
>>>              <Structured>
>>>              ...etc...etc...
>>>
>>> I want the elements representing my various types to be explicitly
>>> prefixed,
>>> as in:
>>>
>>> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope";
>>> xmlns:rfd="urn:ihe:iti:rfd:2007">
>>>  <soap:Body>
>>>      <rfd:RetrieveFormResponse >
>>>          <rfd:form>
>>>              <rfd:Structured>
>>>              ...etc...etc...
>>>
>>> Is there any way to make this happen?
>>>
>>> Thanks very much.
>>>
>
>

Reply via email to