I found an article yesterday on an Israeli news blog. I think it's worth a read, even though they got some details wrong. The article only discusses the Kindle, but I'm pretty sure that this code was first used by Mobipocket. The Bookeen Cybook came out in late 2007 (before the Kindle), and it shipped with a firmware that used Java code for the reading app. As far as I can tell, it's the same code as on the Kindle.
I was a little surprised, actually. Some time back I built an organizational flow chart for Lab126, the Amazon subsidiary that designed the Kindle. they had enough people with Java experience that I honestly thought the work was done in house.
P.S. If your wondering why I made that flow chart then you must not know me very well. It was a Saturday night and I was bored.