The Wiki is a good place for this discussion. ----- Original Message ----- From: "Joseph Panico" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Saturday, July 06, 2002 7:57 AM Subject: Re: [Tapestry-developer] Assets stored in database
> The fact that there is widespread interest in such an Asset shows that the > Tapestry design in the area of assets is under-generalized. I don't believe > that we should have to write a new class of asset for every new method of > image (or any mime content for that matter) retrieval that comes along. The > dynamic charting demonstration application would not have required a custom > asset if Tapestry was properly generalized for image handling and neither > would the problem of images in a database. Tapestry uses the assets abstraction to handle a bunch of difficult cases involving localization and deployment. but the abstraction is flexible enough for more unusual cases. > > In WebObjects I would not have to write special components and services > depending on where my images come from or how they are generated. In Tapestry you don't need new components; you do need a new definition of asset for assets that don't fall into the static types provided by Tapestry (external, context or private). > > The retrieval or generation of images needs to be decoupled from the vending > of images. The image tapestry component should simply be passed an image, > regardless of where that image came from. The logic for providing that image > to the View layer should reside in the Control layer. This is exactly what's going on, except its called "Asset" not "Image". > > In my mind, the very name "Asset" is not general enough. An asset implies > that the resource somehow "belongs" to the application. And indeed, this is > true of the resources that Tapestry's asset system is currently designed > for-- icons and style sheets. But images that are sitting "at large" on the > filesystem, and can be manipulated by many different applications, do not > belong to the Tapestry application. The Tapestry asset system is biased in > favor of resources that the application knows about at development time. But > a properly generalized design would assume that all knowledge of the > resource would be provided dynamically, and the case where the resources > "belong" to the application would be a specialization of that general > system. Yes, should have called it "BlobOfPossiblyBinaryDataFromUndisclosedSourceForUseByComponentsAsTheySeeFit " instead of "Asset". ;-<> The asset system isn't exactly "biased"; its just that the specifications allow for easy identification of static assets and dynamic assets (from a database, generated using JFreeChart, etc.) simply can't be specified statically. The containing component Java class, which is the controller (within the MVC pattern), fulfillls its role by providing the IAsset as a property to the component it embeds. Tapestry provides the IEngineService and Gesture mechanisms as an easy way to provide content for those assets from within Tapestry; though it could just as easily provide assets that provide content using URLs to servlets or some other mechanism. > > I would really like to generate some discussion about a redesign in this > area. It's clear from the mailing list that this is one of the most > frequently encountered shortcomings of Tapestry. I don't see this as a failing or shortcoming of Tapestry, I see it as an opportunity to build a vertical framework on top of Tapestry to provide specialized services of this type. I see the future of Tapestry as the creation of more sophisticated frameworks on top of Tapestry, just as Tapestry is a layer on top of Servlet API. > > Joe > > > >From: "LundakJiri" <[EMAIL PROTECTED]> > >To: <[EMAIL PROTECTED]> > >CC: <[EMAIL PROTECTED]> > >Subject: Re: [Tapestry-developer] Assets stored in database > >Date: Sat, 6 Jul 2002 10:15:05 +0200 > > > >Adam Greene wrote: > > > We are actually working on a Database Asset for a project that we are > >doing. > > > I can send you the code when we are done. > > > >Hi, > > > >I would also be very interested in a database asset. > >Would you mind contributing the code to the community? > > > >Regards > > > >Jiri Lundak > >Switzerland > > > > > >------------------------------------------------------- > >This sf.net email is sponsored by:ThinkGeek > >Got root? We do. > >http://thinkgeek.com/sf > >_______________________________________________ > >Tapestry-developer mailing list > >[EMAIL PROTECTED] > >https://lists.sourceforge.net/lists/listinfo/tapestry-developer > > > Joseph Panico > [EMAIL PROTECTED] > > _________________________________________________________________ > Chat with friends online, try MSN Messenger: http://messenger.msn.com > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Got root? We do. > http://thinkgeek.com/sf > _______________________________________________ > Tapestry-developer mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/tapestry-developer > ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek We have stuff for geeks like you. http://thinkgeek.com/sf _______________________________________________ Tapestry-developer mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/tapestry-developer
