Services are usually not stateful. There are exceptions to this, and it depends on how you construct your service through hivemind. I personally have dealt much with anything besides the stateless service so all the default construction methods work fine for me but know there are other methods out there for it.
-Nick On 9/16/05, Rob Dennett <[EMAIL PROTECTED]> wrote: > Are your services stateful? > > Thanks, > Rob > > -----Original Message----- > From: Joe Trewin [mailto:[EMAIL PROTECTED] > Sent: Friday, September 16, 2005 2:43 AM > To: Tapestry users > Subject: RE: services vs. ASOs > > Services should be used for your application logic. Ideally as much of > the actual functionality of your app can be moved to services, leaving > very little in your actual Tapestry component/page classes. > > I find that this approach provides a good starting point for designing > the app, as my services are designed to be non-Tapestry aware (meaning > they're easy to test and use in other places, potentially even other web > frameworks). > > ASOs should really be limited to just holding a small amount of data > that you need to persist in the session, or application-wide data. > > In our applications we've use Hivemind to help us heavily modularise our > code. For an example, our authentication system is built out of small > services which hivemind glues together for us. The Tapestry components > and pages simply delegate calls to these services. The only ASO we use > is a small class which holds an active user session for logged in users. > > Hivemind instantiates services as they are needed (although you can > force services to be initialised at startup). ASOs are created when they > are first accessed. > > -----Original Message----- > From: Rob Dennett [mailto:[EMAIL PROTECTED] > Sent: 15 September 2005 21:23 > To: Tapestry users > Subject: services vs. ASOs > > For what purposes should you be using Hivemind services versus ASOs. I > gather that services should be stateless, but how should they divide up > the business logic? What is an example of where you would use each? > > > > Also, when are the two instantiated? At launch? On first use? > > > > Thanks for your help, > > Rob > > > -- > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.344 / Virus Database: 267.10.24/101 - Release Date: > 9/13/2005 > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- > No virus found in this incoming message. > Checked by AVG Anti-Virus. > Version: 7.0.344 / Virus Database: 267.10.24/101 - Release Date: 9/13/2005 > > > -- > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.344 / Virus Database: 267.10.24/101 - Release Date: 9/13/2005 > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
