Hi,

Actually there is a clean and easy Wicket way to do this.
No servlets, no URL hand writing.
It is achieved by using a shared resource with parameters as mentioned
above.
I have described it 
http://dotev.blogspot.com/2009/11/serving-images-and-other-resources-with.html
here .

Best regards,
Peter


Juan Pablo Picasso wrote:
> 
> Hi, I've implemented this by mounting a bookmarkable page and writing into
> the response. I've imagine this bypasses some useful wicket features, but
> was the only way I use bookmarkable urls like "/image/someImageName" for
> mapping user uploaded images:
> 
> #Application
> this.mount(new IndexedParamUrlCodingStrategy("/image", ImagePage.class));
> 
> #ImagePage class
> public class ImagePage extends WebPage {
> 
>     private static Logger logger =
> LoggerFactory.getLogger(ImagePage.class);
> 
>     @Override
>     protected void onRender(MarkupStream markupStream) {
>         String imageName = (String)
> this.getRequest().getParameterMap().get("0");
> 
>             byte[] fileContents = PersistenceFacade.readFile(imageName);
>             try {
>                 this.getResponse().getOutputStream().write(fileContents);
>             } catch (IOException e) {
>                 logger.error("Could not write image [" + imageName + "]
> into
> the response", e);
>             }
>         }
>     }
> }
> 
> Any suggestions are welcome,
> regards!
> Juan
> 
> On Mon, Nov 2, 2009 at 3:00 PM, Alex Objelean
> <alex_objel...@yahoo.com>wrote:
> 
>>
>> Exactly. You can see the example posted by Vytautas Racelis earlier at
>> this
>> link:
>>
>> http://xaloon.googlecode.com/svn/trunk/xaloon-wicket-repository/src/main/java/org/xaloon/wicket/component/resource/ImageLink.java
>>
>> I prefer to do it this way:
>> http://pastebin.com/m328e21ff
>>
>> The first example allow you to use directly an Image component, while the
>> second allows you to build the url of any resource by name..
>>
>> Alex Objelean
>>
>>
>> Peter Dotchev wrote:
>> >
>> > Hi Alex,
>> >
>> > I check SharedResources, but as I understand it I would have to add
>> there
>> > a Resource object for each image.
>> >
>> > After checking again the javadoc there might be another way.
>> > Display each image with Image constructor that takes ValueMap and
>> provide
>> > there some image identification.
>> > Add a single Resource object for all images and from
>> getResourceStream()
>> > implementation to call getParameters() which will return the same
>> > parameters passed to Image constructor and tell me which image to
>> return.
>> > Will this work?
>> >
>> > Best regards,
>> > Petar
>> >
>> >
>> > Alexandru Objelean wrote:
>> >>
>> >> Besides the servlet, there is also a wicket way of do it:
>> >>
>> >> - Use shared resource, which is stateless and bookmarkable
>> >>
>> >> If you need more informations about this approach, search on forum or
>> >> just ask... and I'll provide you with some examples of how I do it..
>> >>
>> >> Alex Objelean
>> >>
>> >>
>> >> Peter Dotchev wrote:
>> >>>
>> >>> Hi,
>> >>>
>> >>> My app allows users to upload images and I store them in JCR
>> >>> <http://en.wikipedia.org/wiki/Content_repository_API_for_Java>. I can
>> >>> get InputStream for each one of them.
>> >>> I want to display images in specific pages and I want image URLs to
>> be
>> >>> stable/bookmarkable. Also I don't want these pages to use the session
>> in
>> >>> any way.
>> >>> I checked again chapter 9 about images from Wicket In Action but such
>> >>> use case is not addressed there.
>> >>>
>> >>> I found that SharedResources allows for stable URLs, but I cannot
>> >>> register each individual image.
>> >>>
>> >>> What approach would you suggest?
>> >>>
>> >>> Best regards,
>> >>> Peter
>> >>>
>> >>>
>> >>>
>> >>>
>> >>
>> >>
>> >
>> >
>>
>> --
>> View this message in context:
>> http://old.nabble.com/Bookmarkable-images-from-db-tp26154577p26157757.html
>> Sent from the Wicket - User mailing list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
>> For additional commands, e-mail: users-h...@wicket.apache.org
>>
>>
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Bookmarkable-images-from-db-tp26154577p26693928.html
Sent from the Wicket - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org

Reply via email to