cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rouble <r.ou...@gmail.com>
Subject Re: Exceptions ignore namespace configuration
Date Fri, 06 Jul 2012 16:29:40 GMT
Hi Glen et al,

I am not sure this applies, since mine is a Java first web service.

The only options I know to specify the namespace is via annotation or
package-info both of which do not work.

jax-ws bindings do not apply either to my case because I need the
namespace to show up in the WSDL.

cheers
rouble

On Fri, Jul 6, 2012 at 10:44 AM, Glen Mazza <gmazza@talend.com> wrote:
> My blog article needs updating (soon on my list):
> http://www.jroller.com/gmazza/entry/updating_database_tables_using_jaxws,
> and I haven't tried this, but it appears you can specify the namespace, and
> hence the generated class name for the exception, as shown in Step #4 which
> lists the WSDL:
>
> <wsdl:operation name="AddEmployee">
> <wsdl:input message="tns:AddEmployeeRequest" />
> <wsdl:output message="tns:AddEmployeeResponse" />
> <wsdl:fault message="tns:DataProcessingFault"
>            name="DataProcessingFault" />
> </wsdl:operation>
>
> tns:DataProcessingFault suggests I can use anythingelse:DataProcessingFault
> instead, and the exception will go into a separate package whose name will
> be a function of that namespace.
>
> The third paragraph of this article:
> http://www.jroller.com/gmazza/entry/enhancing_jaxb_artifacts points to links
> on using JAX-WS (not JAXB) customization files, that might also help.
>
> Glen
>
>
> On 07/06/2012 09:22 AM, rouble wrote:
>>
>> Hi Sergey et al,
>>
>> Why don't namespaces of exceptions follow the same rules as other data
>> objects? They seem to ignore the package-info and the annotations. Is
>> this a bug?
>>
>> tia,
>> rouble
>>
>> On Fri, Jul 6, 2012 at 5:52 AM, Sergey Beryozkin<sberyozkin@gmail.com>
>> wrote:
>>>
>>> Hi
>>>
>>> On 05/07/12 22:09, rouble wrote:
>>>>
>>>> CXF Gurus,
>>>>
>>>> I have a web service in which every method throws an Exception (called
>>>> MyException). Now, it does not matter what namespace I try to set for
>>>> the Exception it always fall under the namespace of the Service. I
>>>> have tried using a package-info file and @XmlRootElement(namespace =
>>>> "some.package") - neither take.
>>>>
>>>> A side effect of this is that if I have N web services that use the
>>>> same exception, for instance:
>>>> http://example.com/myfirstwebservice/v1/
>>>> http://example.com/myfirstwebservice/v2/
>>>> http://example.com/mysecondwebservice/v1/
>>>>
>>>> They will all have N different versions of the exact same exception.
>>>> So, if a web client was to deal with more than one web service it will
>>>> need to explicitly handle the different versions of the same
>>>> exception.
>>>>
>>>> Is there a way to specify/force the namespace of an exception to be
>>>> different than the namespace of the service?
>>>>
>>> I'm not sure how it can be managed at the JAX-WS level, however
>>> Transformation Feature may help:
>>> http://cxf.apache.org/docs/transformationfeature.html
>>>
>>> I think you can configure either each individual endpoint to adapt the
>>> exception namespace to the one expected by the client or configure
>>> individual clients to convert multiple namespaces to the single one
>>> recognized by this client
>>>
>>> HTH, Sergey
>>>
>>>> tia,
>>>> rouble
>>>
>>>
>>>
>>> --
>>> Sergey Beryozkin
>>>
>>> Talend Community Coders
>>> http://coders.talend.com/
>>>
>>> Blog: http://sberyozkin.blogspot.com
>
>

Mime
View raw message