A binding framework like JGoodies Binding may be able to save you a lot of coding. It'll help you easily do things like bind a text editing component to the "text" property of the item selected in a table. Whether you change the selection or the text, it'll do the right thing. Behind the scenes PropertyListener's are being added and removed all the time, but the "nightmare" of keeping the right ones registered has already been implemented for you by the binding framework. I don't believe JGoodies will help you much with modifying the same property on several items selected in a list, but I suspect it wouldn't be hard to implement that. Even if you choose not to use a third-party binding framework, it might give you some ideas for how to make your own reusable binding code for this project.