Milen Dyankov

on a mission to help developers build clean, modular, and future-proof software

Just added 'J' in front of WebThumb

July 22, 2010 | 2 Minute Read

Yep, good guess, a Java API to webthumb in now available. Making your Java application display website thumbnails is now something really easy to implement. Get your API KEY form webthumb, download JWebThumb and start requesting and fetching thumbnails with just a few lines of code.   

Why webthumb? Nope, I'm not gonna tell you it's the best tool out there, having unique features, ... or any of this marketing bla bla. The truth is, it was the first tool I found, that met my requirements
  • custom size thumbnails
  • support for both JPG an PNG
  • web services or REST based API
  • either creates thumbnail instantly or sends notification when done
  • free version 

I gave it a try and it turned out it's quite fast and reliable. Not that I have been heavily using it, but so far I haven't had any problems with it. Most of the time when I request a thumbnail it estimates it will take about 20 second but in fact my servlet receives notification in less than 2 seconds. 


So, after a few days of playing with webthumb's API I had a pile of Java snippets testing different aspects of it. Organizing the chaos resulted in version 0.1 of JWebThumb project. Added data model and error handling on the top of that and 0.2 version was ready to go public (under LGPL). As usual Maven helped create a project site from where you can learn how to use JWebThumb, the source code is on GitHub and downloads are available on SourceForge.  If you find a bug or missing feature don't hesitate to create an issue


I consider 0.2 an early beta version. It works but it's not extensively tested and may have bugs. It uses XStream for XML serialization and deserialization thus you can not yet use it on GAE. So version 0.3 is already underway having XStream replaced by Simple so it works on GAE. But before I release it I would like to test it a bit more and perhaps add support for 'status' requests missing in 0.2. So stay tuned, it shouldn't  take too long.