You can't modify or delete this file though. (because there is nowhere in the specs, that specifies that you can do that .....)
Roel wrote : You have an interface with your business operations, let's call it BusinessService containing all business methods you want to invoke. This is the interface you will use in your GUI to call methods on.
Roel wrote :You have to create a special remote interface (RemoteBusinessService) which extends Remote and BusinessService (no other methods needed).
Roel wrote :Then you can create an implementation for RemoteBusinessService and you could use that one for standalone mode as well.
Roel wrote :...in your interface every method will indeed have a "throws RemoteException" (besides any business exceptions).
Roel wrote :And of course calls to any service method are wrapped with a try/catch/finally block to handle appropriately any business exceptions.(and/or the RemoteException)
Roel wrote : You would expect you retrieve once the correct business service implementation based on the mode you are running. That happens for example in the constructor or in some initialize method. Then when you need to find rooms, just call service.findRooms(), when you want to book a room, that's service.book(). And that's where the SuperBusiness interface gives you advantage and doesn't clutter your code: the call in standalone mode and network mode will be exactly the same, the object on which you invoke the call will be different (but your gui will not know that)
Roel wrote : And you might have a look at the rmi tutorial and this thread, because RMI expects some must-dos or otherwise it won't work (and you are violating some of them)