Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] Catch exception with aspectj

Hi,
Yes Catch, i did the correction in below code snippet.
Yes i want to weave the JRE library, i tried to invoke the exception object constructor in the several ways as followed, but nothing works as of now.

        pointcut customException():call(* *.*(..)  throws Exception);
      after() throwing(Exception ex): customException(){
               System.out.println("joinpoint is "+thisJoinPoint);
               System.out.println("exception is "+ ex);
    }



after() throwing(Exception e): execution(* **Exception(..)){
                   System.out.println("jointpoint is "+thisJoinPoint);
                   System.out.println(e);



after(Exception ex) : initialization(*.new(..)) && this(ex){
                   System.out.println("inside exception advice");
                   System.out.println(ex.toString());
                   ex.printStackTrace();
}

after() : within(java.lang.ArrayIndexOutofBoundsException..*)||within(Exception+) {
                   System.out.println("Returned normally with " + thisJoinPoint);
}

Thanks,
Krishna



From: Alexander Kriegisch <Alexander@xxxxxxxxxxxxxx>
To: "aspectj-users@xxxxxxxxxxx" <aspectj-users@xxxxxxxxxxx>
Date: 01/10/2014 01:31 PM
Subject: Re: [aspectj-users] Catch exception with aspectj
Sent by: aspectj-users-bounces@xxxxxxxxxxx





Hi Krishna.

You mean catch, not cache.

What you can do is intercept the method which is actually throwing the exception if it is accessible/weavable for you. I.e. if that joinpoint is in an external library, you need to weave the library. If it is in the JRE, you need to weave the JRE. That way you could also intercept the creation of exceptions by targetting their constructors.

--
Alexander


Am 10.01.2014 um 07:00 schrieb Krishna Jasty <krishna.jasty@xxxxxxx>:

Thanks Andy for clarification.

My confusion is on how to handle the cache exception such as follows.


If the catch block throws exception i can use a handler on get the exception.

catch(Exception e){

throw e;

}


Where as if the developer just did like below, handler cannot caught it. How to proceed in this case.

catch(Exception e){

log.error("Exception occured");

}


Thanks,
Krishna


From: Andy Clement <andrew.clement@xxxxxxxxx>
To: aspectj-users@xxxxxxxxxxx
Date: 01/09/2014 12:22 AM
Subject: Re: [aspectj-users] Exception cache with aspectj
Sent by: aspectj-users-bounces@xxxxxxxxxxx






There is no joinpoint for array access so you cannot catch the exception unfortunately.


Some form of support could be added to AspectJ, but is not currently on the radar.


cheers,

Andy



On 8 January 2014 05:00, Krishna Jasty <
krishna.jasty@xxxxxxx> wrote:
Hi ,

Can anybody faced a similar situation like this.


How to specify a pointcut and advice for caching this type of exception.


               try{

                       int array[]={10,20,30};

                       System.out.println("The value of array is" +array[5]);

                  }

               catch(ArrayIndexOutOfBoundsException aiob){

                        aiob.printStackTrace();

               }


Thanks,
Krishna

=====-----=====-----=====
Notice: The information contained in this e-mail
message and/or attachments to it may contain
confidential or privileged information. If you are
not the intended recipient, any dissemination, use,
review, distribution, printing or copying of the
information contained in this e-mail message
and/or attachments to it are strictly prohibited. If
you have received this communication in error,
please notify us by reply e-mail or telephone and
immediately and permanently delete the message
and any attachments. Thank you

_______________________________________________
aspectj-users mailing list

aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users

_______________________________________________
aspectj-users mailing list

aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users


_______________________________________________
aspectj-users mailing list

aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users



Back to the top