Just wanted to mention stitches (yet again). Stitches consists of a spring layer over JCR (Java content repository) and suite of components that interface to this spring layer to deal with common types of web content (html, pdf's, images, gallerys). Lots of unit tests exist.
There are components for searching, selecting, editing, displaying. One cool thing is that image thumbnails are dynamically generated when you upload the image, and all images are searchable via the jackrabbit index. Phillip ----- Original Message ----- From: "Allen Guo" <[EMAIL PROTECTED]> To: "Tapestry users" <users@tapestry.apache.org> Sent: Wednesday, May 23, 2007 1:12:11 AM (GMT-0500) America/New_York Subject: Re: How to load a image dynamiclly in tapestry5.0.4 But I don't think it's useful for me to organize TAPESTRY application effectlly. That books just represent basic programming Philosophy . Jesse Kuhnert 写道: > +1 I picked it up after seeing Howard mentioned it and loved it. :) > > On 5/22/07, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: >> >> The book "The Pragmatic Programmer" is an excellent start on learning >> how >> to >> organize your code and your mind and work effectively, >> professionally, and >> pragmatically. >> >> http://www.powells.com/biblio/65-9780201616224-0 >> >> On 5/21/07, Allen Guo <[EMAIL PROTECTED]> wrote: >> > >> > Thanks , It's running now >> > But suppose there is five properties of Product is relative with image >> > Product class looks like >> > class Product{ >> > private String _img1; >> > private String _img2; >> > private String _img3; >> > private String _img4; >> > private String _img5; >> > .... >> > } >> > >> > So for show the img, I have to define the corresponding Img url in >> > ProductDetai.java like >> > // ProductDetail.java >> > class ProductDetail{ >> > private String _imgUrl1; >> > private String _imgUrl2; >> > private String _imgUrl3; >> > private String _imgUrl4; >> > private String _imgUrl5; >> > public String getProductImageURL1() { >> > return "http://static.myco.com/product-images/" + _imgUrl1 + ".gif"; >> > } >> > public String getProductImageURL2() { >> > return "http://static.myco.com/product-images/" + _imgUrl2 + ".gif"; >> > } >> > public String getProductImageURL3() { >> > return "http://static.myco.com/product-images/" + _imgUrl3 + ".gif"; >> > } >> > public String getProductImageURL4() { >> > return "http://static.myco.com/product-images/" + _imgUrl4 + ".gif"; >> > } >> > public String getProductImageURL5() { >> > return "http://static.myco.com/product-images/" + _imgUrl5 + ".gif"; >> > } >> > } >> > Imagine another simple page like ProductList, >> > I have to define another list to show the image even there is only a >> > dynamic image for every product >> > The ProductList may look like >> > // ProductList.java >> > class ProductList{ >> > private List _productList; >> > private List _imgList; >> > ...... >> > } >> > Oh god , so terrible codes. >> > There are a lot of similar require my project. >> > Can you give me more suggestion? >> > >> > Howard Lewis Ship 写道: >> > >> > > In order to answer this question, some background is needed. >> > > >> > > If you know the product's id (whatever you use, where it's SKU >> number >> > > or a >> > > surrogate key) ... what is the exact process from going from that >> to a >> > > URL >> > > suitable for an <img> tag? >> > > >> > > That is ... are the images stored in the database? Or are they on >> the >> > > file >> > > system somewhere? If they are files on the file system, are those >> files >> > > mapped to a client-visible URL? >> > > >> > > In the latter case, you can do something like: >> > > >> > > <img t:id="productImage" src="prop:productImageURL"/> >> > > >> > > public String getProductImageURL() { >> > > return "http://static.myco.com/product-images/" + _productId + >> ".gif"; >> > > } >> > > >> > > >> > > >> > > Assigning a t:id to a tag without specifying a component type >> creates >> > > an Any >> > > component, a component that just renders whatever tag and informal >> > > parameters you provide it. Here wer'e linking that to some Java code >> > > in the >> > > corresponding page or component that computes the URL of the product >> > > based >> > > on an instance variable. Probably your example is more complicated, >> > > but you >> > > get the idea. >> > > >> > > There's another approach used when the data is inside the database, >> > > but we >> > > can dive into that if the above solution is insufficient. >> > > >> > > Assets are useful for accessing resources inside the web application >> > > context, or on the classpath, and includes logic related to >> > > localization ... >> > > but it is not always appropriate when accessing resources that are >> well >> > > outside the web application itself. >> > > >> > > On 5/19/07, Allen Guo <[EMAIL PROTECTED]> wrote: >> > >> >> > >> Hi All, >> > >> >> > >> I want to show the ProductDetail page with product image. It looks >> like >> > >> <img src="p_001.jpg" />. >> > >> You know, every product has different image name,so I need to pass >> the >> > >> string 'p_001.jpg' to the corresponding page. >> > >> As result the img tag should look like <img >> src="${product.image}"/> >> or >> > >> I can use Asset to do it. >> > >> >> > >> But I tried to do it using the first approach, exception occured. >> > >> And I don't know how to the second approach. >> > >> Can anyone give me an idea? >> > >> >> > >> Thank in advance >> > >> Allen Guo >> > >> >> > >> >> > >> >> --------------------------------------------------------------------- >> > >> 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] >> > >> > >> >> >> -- >> Howard M. Lewis Ship >> TWD Consulting, Inc. >> Independent J2EE / Open-Source Java Consultant >> Creator and PMC Chair, Apache Tapestry >> Creator, Apache HiveMind >> >> Professional Tapestry training, mentoring, support >> and project work. http://howardlewisship.com >> > > > --------------------------------------------------------------------- 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]