java - Passing Swing classes (references) on network? -
i want know possible send major swing classes event/actionlisteners, events, components via rmi.
possible scenario: if 1 client press button or move slider every client's button or slider move etc same other swing elements.
i expecting answer in context of rmi , swing mvc architecture, want call swing component's models e.g buttonmodel , want send swing actionevent on wire , register propertychangelistener/propertychangesupport remote objects getting updates @ client site.
typical examples : server should call method each client, when ever change occur in model
public void propertychange(propertychangeevent evt) { (abstractviewpanel view: registeredviews) { view.modelpropertychange(evt); } }
in case of event on 1 client, each client actionperformed should called server:
@override public void actionperformed(actionevent e) { }
is feasible? if not why? face problems, mean classes transferable (serialized) , not...
edit: here see m invoking java swing defaultbuttonmodel remotely, thing left when of it's property or method change other client's updates, best following swing propertychangelistener if can me, realizing this, great:
public class remotebuttonmodel extends unicastremoteobject implements model { private buttonmodel model = new defaultbuttonmodel() ; protected mymodel() throws remoteexception { super(); } @override public void setenabled(boolean b) throws remoteexception { if (isenabled()) model.setenabled(false); else{ model.setenabled(true); } } @override public boolean isenabled() throws remoteexception { return model.isenabled(); } }
the javadoc every swing class says should not serialized.
more should transmitting associated model classes.
and event listening via rmi anti-pattern. traffic, many points of failure.
Comments
Post a Comment