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
