users@jax-rs-spec.java.net

[jax-rs-spec users] [jsr339-experts] Re: Re: ExceptionMappers and WebApplicationExceptions

From: Marek Potociar <marek.potociar_at_oracle.com>
Date: Thu, 25 Oct 2012 23:16:09 +0200

FWIW, what I recall we did agree upon, which is however not yet in the spec is that we will make sure that all internal server-side WAEs will be changed to proper sub-types. Similarly, we agreed that on client side, proper sub-type will be thrown based on response error code instead of a generic WAE.

As for your question, I'm not sure it is wise to interfere with application-thrown exceptions. (And I still cannot recall what we decided...)

Marek

On Oct 25, 2012, at 11:10 PM, Marek Potociar <marek.potociar_at_oracle.com> wrote:

>
> On Oct 25, 2012, at 10:57 PM, Sergey Beryozkin <sberyozkin_at_talend.com> wrote:
>
>> Hi
>>
>> I would like to clarify the details of the way WebApplicationExceptions are mapped on the server.
>>
>> Here is what I recall we talked about the other day.
>>
>> The code throws "new WebApplicationException(404)", and both WebApplicationException and NotFoundException mappers are available.
>>
>> Given NotFoundException is effectively WebApplicationException(404),
>> NotFoundException mapper is chosen.
>
> Hmm... are you referring to a specific section in the spec? I cannot recall we agreed on that one, but I may be wrong.
>
>>
>> Similarly, if the code throws "new ServerErrorException(500)" and both
>> ServerErrorException and InternalServerErrorException mappers are available, InternalServerErrorException gets chosen.
>>
>> Is it the way it should work ? This obviously is an exception to the default mapping algorithm, but it appears it is logical given that the runtime understands the relationship between various API exception classes
>
> As I said, I don't recall such agreement, but my memory is not flawless... If you see it in the spec, then we did agree on that :) (Which still doesn't mean we didn't if you don't see it there...)
>
> Marek
>
>>
>> Cheers. Sergey
>