Exception in thread "main" java.rmi.server.ExportException: remote object implements illegal remote interface; nested exception is: 
java.lang.IllegalArgumentException: illegal remote method encountered: public abstract void ChatterServer.ChatterServer.chat(java.lang.String,java.lang.String)
at sun.rmi.server.UnicastServerRef.exportObject(Unknown Source)
at java.rmi.server.UnicastRemoteObject.exportObject(Unknown Source)
at java.rmi.server.UnicastRemoteObject.exportObject(Unknown Source)
at java.rmi.server.UnicastRemoteObject.<init>(Unknown Source)
at java.rmi.server.UnicastRemoteObject.<init>(Unknown Source)
at ChatterServer.ChatterServerImpl.<init>(ChatterServerImpl.java:22)
at ChatterServer.ChatterServerImpl.getInstance(ChatterServerImpl.java:33)
at ChatterServer.ServerFrame.<init>(ServerFrame.java:23)
at ChatterServer.ServerFrame.main(ServerFrame.java:30)
Caused by: java.lang.IllegalArgumentException: illegal remote method encountered: public abstract void ChatterServer.ChatterServer.chat(java.lang.String,java.lang.String)
at sun.rmi.server.Util.checkMethod(Unknown Source)
at sun.rmi.server.Util.getRemoteInterfaces(Unknown Source)
at sun.rmi.server.Util.getRemoteInterfaces(Unknown Source)
at sun.rmi.server.Util.createProxy(Unknown Source)
... 9 more