Ingo, I cannot say what is best, but I can tell you how I have done things and how I have seen it done in other places.
The quick answer to your question is that I think you should have both: - a facade and - a business delegate Let me provide an example from the Apache AXIS web services code generation framework to support this decision. One of the objectives of the axis architecture is to be able to implement a WEB services client that has absolutely no compile time dependencies upon the SOAP technology. The way that axis accomplishes this is that it generates an object called a service locator object. The service locator object is essientially a factory that has the job of creating the correct business delegate implemenation object for the particular method call invocation technology. For example: the factory object can create a business delegate object that accesses the remote services via SOAP (the typical web services transport mechanism) or it could create an business delegate that accesses the remote services of an EJSession Bean object via RMI or it could use objects that exist within the same JVM. Therefore I would recommend an architecture with the following pieces: - a Business Delegate interface that represents some set of remote services - a Session Bean that implements the remote services - a Business Delegate implementation which calls your Session Bean - a Business Delegate Factory that manufactures Business Delegate objects The initial implementation of that factory would manufactures the business delegate object that knows how to use EJSession Bean technology. If you follow the above pattern then the same client code can function from any side of a firewall, or can use any variety of transports such as SOAP or RMI. That is the approach we use to implement the services at the web site: http://www.nextbus.com. We interact with our partners to get our vehicle location data use a variety of network method invocation technologies (SOAP, RMI, raw UDP, ...). The apache WSIF project promotes a similar idea. See: http://ws.apache.org/wsif/ I hope that answers your question. Tony Mowers > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Behalf Of Ingo > Bruell > Sent: Thursday, October 16, 2003 11:52 AM > To: [EMAIL PROTECTED] > Subject: [Andromda-user] Design question > > > Hi, > > i am writing my own cardridges and have a question about generating > session facades to hide the entities. > > I have modeled a class FooFacade with the stereotype <<Facade>>. This > class has associations to the Entity classes (<<EntityRef>>) which > should be accessed via this facade. So i generate this facade with some > createing, accessing (vo's) and removeing functions for each > association. Additional functions could be added throu the model. > > I want to generate the Delegation class at the client side similar. > > Do you think this is a good way or is it better to generate a facade for > each bean like xdoclet does ? > > > -- > best regards > > Ingo Bruell > > -- > <[EMAIL PROTECTED]> > <ICQ# 40377720> > Oldenburg PGP-Fingerprint: CB01 AE12 B359 87C4 BF1C 953C 8FE7 > C648 169E E5FC > Germany PGP-Public-Key available at pgpkeys.mit.edu > ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. SourceForge.net hosts over 70,000 Open Source Projects. See the people who have HELPED US provide better services: Click here: http://sourceforge.net/supporters.php _______________________________________________ Andromda-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/andromda-user