yea i found out my problem didnt have to do with that, it was that the method i was using to get the JButton from the other component was returning the jbutton, casted as a Component(and apparently that is what has no addActionListener() method. the method returning the component(which happened to be the jbutton) was supposed to also be usful for returning other types of components from out of an arraylist, which is why they were being casted as Components. turns out i only really need to be able to get the JButton, and never any other components....so i just changed it so its not casting as a Component... silly mistake...