You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@deltaspike.apache.org by Adrian Gonzalez <ad...@yahoo.fr> on 2012/12/06 18:11:09 UTC
Multiple exceptionHandler classes
Hello,
Is it permitted to have multiple ExceptionHandlers classes in the same application ?
If yes, I have the impression that qualifiers aren't taken into account when it comes to which exceptionHandler method to call first.
I have the impression that EHA#handleException is called even if the ExceptionToCatchEvent was fired with @RestRequest qualifier.
Which ExceptionHandler class is called first depends on every application restart.
@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
public class EHA {
public void handleException(
@Handles ExceptionEvent<RuntimeException> event) {
...
event.handled();
}
}
@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
public class EHB {
public void handleException(
@Handles @RestRequest ExceptionEvent<RuntimeException> event) {
...
event.handled();
}
}
Thanks
Re: Multiple exceptionHandler classes
Posted by Adrian Gonzalez <ad...@yahoo.fr>.
DELTASPIKE-297 created.
Thanks !
________________________________
De : Jason Porter <li...@gmail.com>
À : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
Cc : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
Envoyé le : Lundi 10 décembre 2012 16h57
Objet : Re: Multiple exceptionHandler classes
Yes, create a JIRA please and add any links there.
Sent from my iPhone
On Dec 10, 2012, at 8:31, Adrian Gonzalez <ad...@yahoo.fr> wrote:
> Ok I found it, there's an error in ExceptionHandlerComparator [1], it doesn't handle qualifiers correctly.
> Should I open a JIRA ?
>
>
> Lines 57-60 :
>
> if (returnValue == 0 && !lhs.getQualifiers().isEmpty())
> {
> return -1;
> }
>
> Instead it should :
> * remove Any qualifier from rhs and lhs
> * compare remaining qualifier size between rhs and lhs.
>
> I've made a quick and ugly correction (not really performant) in my branch [2].
> See [3].
>
> [1] https://github.com/gonzalad/incubator-deltaspike/blob/8a8878faf2c12e69ba742dff1fb803b6f7d713b2/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/exception/control/ExceptionHandlerComparator.java
> [2] https://github.com/gonzalad/incubator-deltaspike/tree/exception-multiple-handler
> [3] https://github.com/gonzalad/incubator-deltaspike/commit/473eafe621c4401837b7e62411eb9833786544dc#deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/exception/control/ExceptionHandlerComparator.java
>
> ________________________________
> De : Adrian Gonzalez <ad...@yahoo.fr>
> À : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
> Envoyé le : Lundi 10 décembre 2012 12h48
> Objet : Re: Multiple exceptionHandler classes
>
> Hi,
>
> I just added a testcase [1] .
>
> Testcase fails once every twice.
>
> I'll look a bit more at DS code.
> If someone has an idea in the meantime ;)
>
> Regards,
>
> [1] https://github.com/gonzalad/incubator-deltaspike/blob/exception-multiple-handler/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/impl/exception/control/event/MultipleExceptionHandlerTest.java
>
>
> ________________________________
> De : Jason Porter <li...@gmail.com>
> À : Adrian Gonzalez <ad...@yahoo.fr>
> Cc : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
> Envoyé le : Jeudi 6 décembre 2012 18h56
> Objet : Re: Multiple exceptionHandler classes
>
> If it's being called always from that code it should always hit the one
> with the qualifier first, if not, then we have a bug. Take a look at the
> tests and see if something is missing either in the suite or something
> different with the way you're doing things. I know this worked perfectly in
> Seam 3, and the code is nearly a direct port.
>
>
> On Thu, Dec 6, 2012 at 10:35 AM, Adrian Gonzalez <ad...@yahoo.fr>wrote:
>
>> Thanks jason,
>>
>>> Do you have some code with how you're calling into the exception
>> handling?
>>
>>
>> Yep, the code is in [1]
>>
>>
>> I'll try to test it more thoroughly on my side on Monday (week end time
>> for me now ;) )
>>
>> [1]
>> https://github.com/gonzalad/incubator-deltaspike/blob/ds-rest/deltaspike/modules/rest/impl/src/main/java/org/apache/deltaspike/rest/impl/exceptions/ExceptionMapper.java
>>
>> ________________________________
>> De : Jason Porter <li...@gmail.com>
>> À : "deltaspike-dev@incubator.apache.org" <
>> deltaspike-dev@incubator.apache.org>; Adrian Gonzalez <
>> adr_gonzalez@yahoo.fr>
>> Envoyé le : Jeudi 6 décembre 2012 18h25
>> Objet : Re: Multiple exceptionHandler classes
>>
>>
>> On Thu, Dec 6, 2012 at 10:11 AM, Adrian Gonzalez <ad...@yahoo.fr>
>> wrote:
>>
>> Hello,
>>>
>>> Is it permitted to have multiple ExceptionHandlers classes in the same
>> application ?
>>>
>>> If yes, I have the impression that qualifiers aren't taken into account
>> when it comes to which exceptionHandler method to call first.
>>> I have the impression that EHA#handleException is called even if the
>> ExceptionToCatchEvent was fired with @RestRequest qualifier.
>>
>> Yes, this works fine, and is tested quite thoroughly in the test suite.
>>
>>
>> Which ExceptionHandler class is called first depends on every application
>> restart.
>>
>>> @org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
>>> public class EHA {
>>> public void handleException(
>>>
>>> @Handles ExceptionEvent<RuntimeException> event) {
>>> ...
>>> event.handled();
>>> }
>>> }
>>
>>> @org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
>>> public class EHB {
>>> public void handleException(
>>>
>>> @Handles @RestRequest ExceptionEvent<RuntimeException> event) {
>>> ...
>>>
>>> event.handled();
>>> }
>>> }
>>>
>>> Thanks
>> Do you have some code with how you're calling into the exception handling?
>>
>>
>> --
>> Jason Porter
>> http://lightguard-jp.blogspot.com
>> http://twitter.com/lightguardjp
>>
>> Software Engineer
>> Open Source Advocate
>>
>> PGP key id: 926CCFF5
>> PGP key available at: keyserver.net, pgp.mit.edu
>
>
>
> --
> Jason Porter
> http://lightguard-jp.blogspot.com
> http://twitter.com/lightguardjp
>
> Software Engineer
> Open Source Advocate
>
> PGP key id: 926CCFF5
> PGP key available at: keyserver.net, pgp.mit.edu
Re: Multiple exceptionHandler classes
Posted by Jason Porter <li...@gmail.com>.
Yes, create a JIRA please and add any links there.
Sent from my iPhone
On Dec 10, 2012, at 8:31, Adrian Gonzalez <ad...@yahoo.fr> wrote:
> Ok I found it, there's an error in ExceptionHandlerComparator [1], it doesn't handle qualifiers correctly.
> Should I open a JIRA ?
>
>
> Lines 57-60 :
>
> if (returnValue == 0 && !lhs.getQualifiers().isEmpty())
> {
> return -1;
> }
>
> Instead it should :
> * remove Any qualifier from rhs and lhs
> * compare remaining qualifier size between rhs and lhs.
>
> I've made a quick and ugly correction (not really performant) in my branch [2].
> See [3].
>
> [1] https://github.com/gonzalad/incubator-deltaspike/blob/8a8878faf2c12e69ba742dff1fb803b6f7d713b2/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/exception/control/ExceptionHandlerComparator.java
> [2] https://github.com/gonzalad/incubator-deltaspike/tree/exception-multiple-handler
> [3] https://github.com/gonzalad/incubator-deltaspike/commit/473eafe621c4401837b7e62411eb9833786544dc#deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/exception/control/ExceptionHandlerComparator.java
>
> ________________________________
> De : Adrian Gonzalez <ad...@yahoo.fr>
> À : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
> Envoyé le : Lundi 10 décembre 2012 12h48
> Objet : Re: Multiple exceptionHandler classes
>
> Hi,
>
> I just added a testcase [1] .
>
> Testcase fails once every twice.
>
> I'll look a bit more at DS code.
> If someone has an idea in the meantime ;)
>
> Regards,
>
> [1] https://github.com/gonzalad/incubator-deltaspike/blob/exception-multiple-handler/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/impl/exception/control/event/MultipleExceptionHandlerTest.java
>
>
> ________________________________
> De : Jason Porter <li...@gmail.com>
> À : Adrian Gonzalez <ad...@yahoo.fr>
> Cc : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
> Envoyé le : Jeudi 6 décembre 2012 18h56
> Objet : Re: Multiple exceptionHandler classes
>
> If it's being called always from that code it should always hit the one
> with the qualifier first, if not, then we have a bug. Take a look at the
> tests and see if something is missing either in the suite or something
> different with the way you're doing things. I know this worked perfectly in
> Seam 3, and the code is nearly a direct port.
>
>
> On Thu, Dec 6, 2012 at 10:35 AM, Adrian Gonzalez <ad...@yahoo.fr>wrote:
>
>> Thanks jason,
>>
>>> Do you have some code with how you're calling into the exception
>> handling?
>>
>>
>> Yep, the code is in [1]
>>
>>
>> I'll try to test it more thoroughly on my side on Monday (week end time
>> for me now ;) )
>>
>> [1]
>> https://github.com/gonzalad/incubator-deltaspike/blob/ds-rest/deltaspike/modules/rest/impl/src/main/java/org/apache/deltaspike/rest/impl/exceptions/ExceptionMapper.java
>>
>> ________________________________
>> De : Jason Porter <li...@gmail.com>
>> À : "deltaspike-dev@incubator.apache.org" <
>> deltaspike-dev@incubator.apache.org>; Adrian Gonzalez <
>> adr_gonzalez@yahoo.fr>
>> Envoyé le : Jeudi 6 décembre 2012 18h25
>> Objet : Re: Multiple exceptionHandler classes
>>
>>
>> On Thu, Dec 6, 2012 at 10:11 AM, Adrian Gonzalez <ad...@yahoo.fr>
>> wrote:
>>
>> Hello,
>>>
>>> Is it permitted to have multiple ExceptionHandlers classes in the same
>> application ?
>>>
>>> If yes, I have the impression that qualifiers aren't taken into account
>> when it comes to which exceptionHandler method to call first.
>>> I have the impression that EHA#handleException is called even if the
>> ExceptionToCatchEvent was fired with @RestRequest qualifier.
>>
>> Yes, this works fine, and is tested quite thoroughly in the test suite.
>>
>>
>> Which ExceptionHandler class is called first depends on every application
>> restart.
>>
>>> @org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
>>> public class EHA {
>>> public void handleException(
>>>
>>> @Handles ExceptionEvent<RuntimeException> event) {
>>> ...
>>> event.handled();
>>> }
>>> }
>>
>>> @org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
>>> public class EHB {
>>> public void handleException(
>>>
>>> @Handles @RestRequest ExceptionEvent<RuntimeException> event) {
>>> ...
>>>
>>> event.handled();
>>> }
>>> }
>>>
>>> Thanks
>> Do you have some code with how you're calling into the exception handling?
>>
>>
>> --
>> Jason Porter
>> http://lightguard-jp.blogspot.com
>> http://twitter.com/lightguardjp
>>
>> Software Engineer
>> Open Source Advocate
>>
>> PGP key id: 926CCFF5
>> PGP key available at: keyserver.net, pgp.mit.edu
>
>
>
> --
> Jason Porter
> http://lightguard-jp.blogspot.com
> http://twitter.com/lightguardjp
>
> Software Engineer
> Open Source Advocate
>
> PGP key id: 926CCFF5
> PGP key available at: keyserver.net, pgp.mit.edu
Re: Multiple exceptionHandler classes
Posted by Adrian Gonzalez <ad...@yahoo.fr>.
Ok I found it, there's an error in ExceptionHandlerComparator [1], it doesn't handle qualifiers correctly.
Should I open a JIRA ?
Lines 57-60 :
if (returnValue == 0 && !lhs.getQualifiers().isEmpty())
{
return -1;
}
Instead it should :
* remove Any qualifier from rhs and lhs
* compare remaining qualifier size between rhs and lhs.
I've made a quick and ugly correction (not really performant) in my branch [2].
See [3].
[1] https://github.com/gonzalad/incubator-deltaspike/blob/8a8878faf2c12e69ba742dff1fb803b6f7d713b2/deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/exception/control/ExceptionHandlerComparator.java
[2] https://github.com/gonzalad/incubator-deltaspike/tree/exception-multiple-handler
[3] https://github.com/gonzalad/incubator-deltaspike/commit/473eafe621c4401837b7e62411eb9833786544dc#deltaspike/core/impl/src/main/java/org/apache/deltaspike/core/impl/exception/control/ExceptionHandlerComparator.java
________________________________
De : Adrian Gonzalez <ad...@yahoo.fr>
À : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
Envoyé le : Lundi 10 décembre 2012 12h48
Objet : Re: Multiple exceptionHandler classes
Hi,
I just added a testcase [1] .
Testcase fails once every twice.
I'll look a bit more at DS code.
If someone has an idea in the meantime ;)
Regards,
[1] https://github.com/gonzalad/incubator-deltaspike/blob/exception-multiple-handler/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/impl/exception/control/event/MultipleExceptionHandlerTest.java
________________________________
De : Jason Porter <li...@gmail.com>
À : Adrian Gonzalez <ad...@yahoo.fr>
Cc : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
Envoyé le : Jeudi 6 décembre 2012 18h56
Objet : Re: Multiple exceptionHandler classes
If it's being called always from that code it should always hit the one
with the qualifier first, if not, then we have a bug. Take a look at the
tests and see if something is missing either in the suite or something
different with the way you're doing things. I know this worked perfectly in
Seam 3, and the code is nearly a direct port.
On Thu, Dec 6, 2012 at 10:35 AM, Adrian Gonzalez <ad...@yahoo.fr>wrote:
> Thanks jason,
>
> > Do you have some code with how you're calling into the exception
> handling?
>
>
> Yep, the code is in [1]
>
>
> I'll try to test it more thoroughly on my side on Monday (week end time
> for me now ;) )
>
> [1]
> https://github.com/gonzalad/incubator-deltaspike/blob/ds-rest/deltaspike/modules/rest/impl/src/main/java/org/apache/deltaspike/rest/impl/exceptions/ExceptionMapper.java
>
> ________________________________
> De : Jason Porter <li...@gmail.com>
> À : "deltaspike-dev@incubator.apache.org" <
> deltaspike-dev@incubator.apache.org>; Adrian Gonzalez <
> adr_gonzalez@yahoo.fr>
> Envoyé le : Jeudi 6 décembre 2012 18h25
> Objet : Re: Multiple exceptionHandler classes
>
>
> On Thu, Dec 6, 2012 at 10:11 AM, Adrian Gonzalez <ad...@yahoo.fr>
> wrote:
>
> Hello,
> >
> >Is it permitted to have multiple ExceptionHandlers classes in the same
> application ?
> >
> >If yes, I have the impression that qualifiers aren't taken into account
> when it comes to which exceptionHandler method to call first.
> >I have the impression that EHA#handleException is called even if the
> ExceptionToCatchEvent was fired with @RestRequest qualifier.
> >
>
> Yes, this works fine, and is tested quite thoroughly in the test suite.
>
>
> Which ExceptionHandler class is called first depends on every application
> restart.
> >
> >
>
> >@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> >public class EHA {
> >public void handleException(
> >
> >@Handles ExceptionEvent<RuntimeException> event) {
> >...
> >event.handled();
> >}
> >}
> >
>
> >@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> >public class EHB {
> >public void handleException(
> >
> >@Handles @RestRequest ExceptionEvent<RuntimeException> event) {
> >...
> >
> >event.handled();
> >}
> >}
> >
> >Thanks
> >
> Do you have some code with how you're calling into the exception handling?
>
>
> --
> Jason Porter
> http://lightguard-jp.blogspot.com
> http://twitter.com/lightguardjp
>
> Software Engineer
> Open Source Advocate
>
> PGP key id: 926CCFF5
> PGP key available at: keyserver.net, pgp.mit.edu
>
--
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp
Software Engineer
Open Source Advocate
PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu
Re: Multiple exceptionHandler classes
Posted by Adrian Gonzalez <ad...@yahoo.fr>.
Hi,
I just added a testcase [1] .
Testcase fails once every twice.
I'll look a bit more at DS code.
If someone has an idea in the meantime ;)
Regards,
[1] https://github.com/gonzalad/incubator-deltaspike/blob/exception-multiple-handler/deltaspike/core/impl/src/test/java/org/apache/deltaspike/test/core/impl/exception/control/event/MultipleExceptionHandlerTest.java
________________________________
De : Jason Porter <li...@gmail.com>
À : Adrian Gonzalez <ad...@yahoo.fr>
Cc : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>
Envoyé le : Jeudi 6 décembre 2012 18h56
Objet : Re: Multiple exceptionHandler classes
If it's being called always from that code it should always hit the one
with the qualifier first, if not, then we have a bug. Take a look at the
tests and see if something is missing either in the suite or something
different with the way you're doing things. I know this worked perfectly in
Seam 3, and the code is nearly a direct port.
On Thu, Dec 6, 2012 at 10:35 AM, Adrian Gonzalez <ad...@yahoo.fr>wrote:
> Thanks jason,
>
> > Do you have some code with how you're calling into the exception
> handling?
>
>
> Yep, the code is in [1]
>
>
> I'll try to test it more thoroughly on my side on Monday (week end time
> for me now ;) )
>
> [1]
> https://github.com/gonzalad/incubator-deltaspike/blob/ds-rest/deltaspike/modules/rest/impl/src/main/java/org/apache/deltaspike/rest/impl/exceptions/ExceptionMapper.java
>
> ________________________________
> De : Jason Porter <li...@gmail.com>
> À : "deltaspike-dev@incubator.apache.org" <
> deltaspike-dev@incubator.apache.org>; Adrian Gonzalez <
> adr_gonzalez@yahoo.fr>
> Envoyé le : Jeudi 6 décembre 2012 18h25
> Objet : Re: Multiple exceptionHandler classes
>
>
> On Thu, Dec 6, 2012 at 10:11 AM, Adrian Gonzalez <ad...@yahoo.fr>
> wrote:
>
> Hello,
> >
> >Is it permitted to have multiple ExceptionHandlers classes in the same
> application ?
> >
> >If yes, I have the impression that qualifiers aren't taken into account
> when it comes to which exceptionHandler method to call first.
> >I have the impression that EHA#handleException is called even if the
> ExceptionToCatchEvent was fired with @RestRequest qualifier.
> >
>
> Yes, this works fine, and is tested quite thoroughly in the test suite.
>
>
> Which ExceptionHandler class is called first depends on every application
> restart.
> >
> >
>
> >@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> >public class EHA {
> >public void handleException(
> >
> >@Handles ExceptionEvent<RuntimeException> event) {
> >...
> >event.handled();
> >}
> >}
> >
>
> >@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> >public class EHB {
> >public void handleException(
> >
> >@Handles @RestRequest ExceptionEvent<RuntimeException> event) {
> >...
> >
> >event.handled();
> >}
> >}
> >
> >Thanks
> >
> Do you have some code with how you're calling into the exception handling?
>
>
> --
> Jason Porter
> http://lightguard-jp.blogspot.com
> http://twitter.com/lightguardjp
>
> Software Engineer
> Open Source Advocate
>
> PGP key id: 926CCFF5
> PGP key available at: keyserver.net, pgp.mit.edu
>
--
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp
Software Engineer
Open Source Advocate
PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu
Re: Multiple exceptionHandler classes
Posted by Jason Porter <li...@gmail.com>.
If it's being called always from that code it should always hit the one
with the qualifier first, if not, then we have a bug. Take a look at the
tests and see if something is missing either in the suite or something
different with the way you're doing things. I know this worked perfectly in
Seam 3, and the code is nearly a direct port.
On Thu, Dec 6, 2012 at 10:35 AM, Adrian Gonzalez <ad...@yahoo.fr>wrote:
> Thanks jason,
>
> > Do you have some code with how you're calling into the exception
> handling?
>
>
> Yep, the code is in [1]
>
>
> I'll try to test it more thoroughly on my side on Monday (week end time
> for me now ;) )
>
> [1]
> https://github.com/gonzalad/incubator-deltaspike/blob/ds-rest/deltaspike/modules/rest/impl/src/main/java/org/apache/deltaspike/rest/impl/exceptions/ExceptionMapper.java
>
> ________________________________
> De : Jason Porter <li...@gmail.com>
> À : "deltaspike-dev@incubator.apache.org" <
> deltaspike-dev@incubator.apache.org>; Adrian Gonzalez <
> adr_gonzalez@yahoo.fr>
> Envoyé le : Jeudi 6 décembre 2012 18h25
> Objet : Re: Multiple exceptionHandler classes
>
>
> On Thu, Dec 6, 2012 at 10:11 AM, Adrian Gonzalez <ad...@yahoo.fr>
> wrote:
>
> Hello,
> >
> >Is it permitted to have multiple ExceptionHandlers classes in the same
> application ?
> >
> >If yes, I have the impression that qualifiers aren't taken into account
> when it comes to which exceptionHandler method to call first.
> >I have the impression that EHA#handleException is called even if the
> ExceptionToCatchEvent was fired with @RestRequest qualifier.
> >
>
> Yes, this works fine, and is tested quite thoroughly in the test suite.
>
>
> Which ExceptionHandler class is called first depends on every application
> restart.
> >
> >
>
> >@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> >public class EHA {
> >public void handleException(
> >
> >@Handles ExceptionEvent<RuntimeException> event) {
> >...
> >event.handled();
> >}
> >}
> >
>
> >@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> >public class EHB {
> >public void handleException(
> >
> >@Handles @RestRequest ExceptionEvent<RuntimeException> event) {
> >...
> >
> >event.handled();
> >}
> >}
> >
> >Thanks
> >
> Do you have some code with how you're calling into the exception handling?
>
>
> --
> Jason Porter
> http://lightguard-jp.blogspot.com
> http://twitter.com/lightguardjp
>
> Software Engineer
> Open Source Advocate
>
> PGP key id: 926CCFF5
> PGP key available at: keyserver.net, pgp.mit.edu
>
--
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp
Software Engineer
Open Source Advocate
PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu
Re: Multiple exceptionHandler classes
Posted by Adrian Gonzalez <ad...@yahoo.fr>.
Thanks jason,
> Do you have some code with how you're calling into the exception handling?
Yep, the code is in [1]
I'll try to test it more thoroughly on my side on Monday (week end time for me now ;) )
[1] https://github.com/gonzalad/incubator-deltaspike/blob/ds-rest/deltaspike/modules/rest/impl/src/main/java/org/apache/deltaspike/rest/impl/exceptions/ExceptionMapper.java
________________________________
De : Jason Porter <li...@gmail.com>
À : "deltaspike-dev@incubator.apache.org" <de...@incubator.apache.org>; Adrian Gonzalez <ad...@yahoo.fr>
Envoyé le : Jeudi 6 décembre 2012 18h25
Objet : Re: Multiple exceptionHandler classes
On Thu, Dec 6, 2012 at 10:11 AM, Adrian Gonzalez <ad...@yahoo.fr> wrote:
Hello,
>
>Is it permitted to have multiple ExceptionHandlers classes in the same application ?
>
>If yes, I have the impression that qualifiers aren't taken into account when it comes to which exceptionHandler method to call first.
>I have the impression that EHA#handleException is called even if the ExceptionToCatchEvent was fired with @RestRequest qualifier.
>
Yes, this works fine, and is tested quite thoroughly in the test suite.
Which ExceptionHandler class is called first depends on every application restart.
>
>
>@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
>public class EHA {
>public void handleException(
>
>@Handles ExceptionEvent<RuntimeException> event) {
>...
>event.handled();
>}
>}
>
>@org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
>public class EHB {
>public void handleException(
>
>@Handles @RestRequest ExceptionEvent<RuntimeException> event) {
>...
>
>event.handled();
>}
>}
>
>Thanks
>
Do you have some code with how you're calling into the exception handling?
--
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp
Software Engineer
Open Source Advocate
PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu
Re: Multiple exceptionHandler classes
Posted by Jason Porter <li...@gmail.com>.
On Thu, Dec 6, 2012 at 10:11 AM, Adrian Gonzalez <ad...@yahoo.fr>wrote:
> Hello,
>
> Is it permitted to have multiple ExceptionHandlers classes in the same
> application ?
>
> If yes, I have the impression that qualifiers aren't taken into account
> when it comes to which exceptionHandler method to call first.
> I have the impression that EHA#handleException is called even if the
> ExceptionToCatchEvent was fired with @RestRequest qualifier.
>
Yes, this works fine, and is tested quite thoroughly in the test suite.
> Which ExceptionHandler class is called first depends on every application
> restart.
>
>
>
> @org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> public class EHA {
> public void handleException(
>
> @Handles ExceptionEvent<RuntimeException> event) {
> ...
> event.handled();
> }
> }
>
>
> @org.apache.deltaspike.core.api.exception.control.annotation.ExceptionHandler
> public class EHB {
> public void handleException(
>
> @Handles @RestRequest ExceptionEvent<RuntimeException> event) {
> ...
>
> event.handled();
> }
> }
>
> Thanks
>
Do you have some code with how you're calling into the exception handling?
--
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp
Software Engineer
Open Source Advocate
PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu