It depends on which layer you are going to use BusinessDelegate in.
Generally speaking a BusinessDelegate is used in the presentation layer, so that the presentation tier has access to the business functionality in a uniform, simplified manner. But there might be a case where one business component (A) has to call another business component (B). In this scenario, a business delegate to component B will reside in the business tier.
To simplify things, if we think in terms of client and server, the business delegate will always reside in the client.
The client could be residing in the presentation tier or the business tier.
But again generally speaking, Business delegate resides in the presentation tier.
I hope this helps.
Joined: Jun 07, 2003
Point made. I am now completely agreed that the business delegate component should be in presentation layer,
But does it means that interfaces of EJB3 behave as business delegate ??
i.e business delegate (EJB Interface) --> Business façade (EJB implementation) --> ……
I think business delegate must be present into client tier because in the pattern consequences said: It is easier to manage changes (on client I suppose) because they are centralized in one place, the Business Delegate. Anyway, these patterns must be read very, very well because it is so easy to confused them...
Hello, here is a literal quote from the Core J2EE Patterns book
The Business Delegate (302) pattern is categorized as a business-tier pattern and not a presentation-tier pattern because the Business Delegate is a logical abstraction, not a physical one. When used with a presentation tier, the actual Business Delegate components live in the presentation tier. However, they are a logical extension of the business tier...