I'd suspect that sometimes getActionCommand() is returning null when
called on the ActionEvent.

Andy

On 29 June 2010 12:00, Kashtan, Daniel <[email protected]> wrote:
> So I got something almost working. I am not sure whether my pointcut or 
> advice are causing the problem. It works, but I get some weird exception 
> after it works :(
>
> after(ActionEvent e) : args(e) && execution(void 
> java.awt.event.ActionListener+.actionPerformed(ActionEvent))
>        {
>                if(e.getActionCommand().equals("Commit"))
>                        System.out.println("Commit clicked");
>        }
>
> It prints the string only when that specific button is clicked, but then I 
> get some unexpected Exception, and walking through the debugger did not help 
> me find it. It just goes to the  Please help if you have any ideas. Here is 
> what my output looks like from the console.
>
> Commit clicked
> Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
>        at 
> org.eclipse.equinox.weaving.hello.aspects.HelloAspect.ajc$after$org_eclipse_equinox_weaving_hello_aspects_HelloAspect$4$1bc128eb(HelloAspect.aj:54)
>        at 
> org.eclipse.equinox.weaving.demo.hello.internal.Activator$RawFileControlUICallback.actionPerformed(Activator.java:166)
>        at undo.UndoServiceImp.commit(UndoServiceImp.java:42)
>        at 
> org.eclipse.equinox.weaving.demo.hello.internal.Activator$2.actionPerformed(Activator.java:101)
>        at 
> javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
>        at 
> javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
>        at 
> javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
>        at 
> javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
>        at 
> javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
>        at java.awt.Component.processMouseEvent(Component.java:6263)
>        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
>        at java.awt.Component.processEvent(Component.java:6028)
>        at java.awt.Container.processEvent(Container.java:2041)
>        at java.awt.Component.dispatchEventImpl(Component.java:4630)
>        at java.awt.Container.dispatchEventImpl(Container.java:2099)
>        at java.awt.Component.dispatchEvent(Component.java:4460)
>        at 
> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
>        at 
> java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
>        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
>        at java.awt.Container.dispatchEventImpl(Container.java:2085)
>        at java.awt.Window.dispatchEventImpl(Window.java:2475)
>        at java.awt.Component.dispatchEvent(Component.java:4460)
>        at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
>        at 
> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>        at 
> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>        at 
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>        at 
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>        at 
> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
> ________________________________________
> From: [email protected] [[email protected]] 
> On Behalf Of Kashtan, Daniel [[email protected]]
> Sent: Tuesday, June 29, 2010 11:28 AM
> To: [email protected]
> Subject: [aspectj-users] Aspect for clicking on a JButton
>
> Hey all,
>
> I am having a hard time trying to figure out how to make a pointcut that can 
> trigger when a JButton is clicked. Also, would I be able to target specific 
> buttons being clicked? What can I do?
>
> This e-mail and any files transmitted with it may be proprietary and are 
> intended solely for the use of the individual or entity to whom they are 
> addressed. If you have received this e-mail in error please notify the sender.
> Please note that any views or opinions presented in this e-mail are solely 
> those of the author and do not necessarily represent those of ITT 
> Corporation. The recipient should check this e-mail and any attachments for 
> the presence of viruses. ITT accepts no liability for any damage caused by 
> any virus transmitted by this e-mail.
> _______________________________________________
> aspectj-users mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
> _______________________________________________
> aspectj-users mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
_______________________________________________
aspectj-users mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/aspectj-users

Reply via email to